1
0
Fork 0
mirror of https://github.com/fog/fog-aws.git synced 2022-11-09 13:50:52 -05:00
fog--fog-aws/tests/models/iam/users_tests.rb
Josh Lane d48d376e9c initial import
* take the liberty of correcting Aws naming
2014-12-31 09:17:51 -08:00

71 lines
1.9 KiB
Ruby

Shindo.tests("Fog::Compute[:iam] | users", ['aws','iam']) do
@iam = Fog::AWS[:iam]
@user_one_name = 'fake_user_one'
@user_two_name = 'fake_user_two'
@user_three_name = 'fake_user_three'
@user_three_path = '/path/to/fake_user_three/'
@user_four_name = 'fake_user_four'
def all_users
@iam.users.all.select{|user| user.id =~ /^fake_user/ }
end
tests('#create').succeeds do
@user_one = @iam.users.create(:id => @user_one_name)
@user_one.id == @user_one_name
end
tests('#all','there is only one user').succeeds do
all_users.size == 1
end
tests('#all','the only user should match').succeeds do
all_users.first.id == @user_one_name
end
tests('#create','a second user').succeeds do
@user_two = @iam.users.create(:id => @user_two_name)
@user_two.id == @user_two_name
end
tests('#all','there are two users').succeeds do
all_users.size == 2
end
tests('#get','an existing user').succeeds do
@iam.users.get(@user_one_name).id == @user_one_name
end
tests('#get',"returns nil if the user doesn't exists").succeeds do
@iam.users.get('non-exists') == nil
end
tests('#policies','it has no policies').succeeds do
@iam.users.get(@user_one_name).policies.empty?
end
tests('#access_keys','it has no keys').succeeds do
@iam.users.get(@user_one_name).access_keys.empty?
end
tests('#create', 'assigns path').succeeds do
@user_three = @iam.users.create(:id => @user_three_name, :path => @user_three_path)
@user_three.path == @user_three_path
end
tests('#create', 'defaults path to /').succeeds do
@user_four = @iam.users.create(:id => @user_four_name)
@user_four.path == '/'
end
tests('#destroy','an existing user').succeeds do
@iam.users.get(@user_one_name).destroy
end
tests('#destroy','clean up remaining user').succeeds do
@iam.users.get(@user_two_name).destroy
end
end