summaryrefslogtreecommitdiff
path: root/spec/graphql/resolvers/users_resolver_spec.rb
diff options
context:
space:
mode:
authorRobert Speicher <rspeicher@gmail.com>2021-01-20 13:34:23 -0600
committerRobert Speicher <rspeicher@gmail.com>2021-01-20 13:34:23 -0600
commit6438df3a1e0fb944485cebf07976160184697d72 (patch)
tree00b09bfd170e77ae9391b1a2f5a93ef6839f2597 /spec/graphql/resolvers/users_resolver_spec.rb
parent42bcd54d971da7ef2854b896a7b34f4ef8601067 (diff)
downloadgitlab-ce-6438df3a1e0fb944485cebf07976160184697d72.tar.gz
Add latest changes from gitlab-org/gitlab@13-8-stable-eev13.8.0-rc42
Diffstat (limited to 'spec/graphql/resolvers/users_resolver_spec.rb')
-rw-r--r--spec/graphql/resolvers/users_resolver_spec.rb26
1 files changed, 18 insertions, 8 deletions
diff --git a/spec/graphql/resolvers/users_resolver_spec.rb b/spec/graphql/resolvers/users_resolver_spec.rb
index 1aa24055a89..031d7c99eef 100644
--- a/spec/graphql/resolvers/users_resolver_spec.rb
+++ b/spec/graphql/resolvers/users_resolver_spec.rb
@@ -27,7 +27,7 @@ RSpec.describe Resolvers::UsersResolver do
context 'when both ids and usernames are passed ' do
it 'raises an error' do
- expect { resolve_users(ids: [user1.to_global_id.to_s], usernames: [user1.username]) }
+ expect { resolve_users( args: { ids: [user1.to_global_id.to_s], usernames: [user1.username] } ) }
.to raise_error(Gitlab::Graphql::Errors::ArgumentError)
end
end
@@ -35,7 +35,7 @@ RSpec.describe Resolvers::UsersResolver do
context 'when a set of IDs is passed' do
it 'returns those users' do
expect(
- resolve_users(ids: [user1.to_global_id.to_s, user2.to_global_id.to_s])
+ resolve_users( args: { ids: [user1.to_global_id.to_s, user2.to_global_id.to_s] } )
).to contain_exactly(user1, user2)
end
end
@@ -43,21 +43,31 @@ RSpec.describe Resolvers::UsersResolver do
context 'when a set of usernames is passed' do
it 'returns those users' do
expect(
- resolve_users(usernames: [user1.username, user2.username])
+ resolve_users( args: { usernames: [user1.username, user2.username] } )
).to contain_exactly(user1, user2)
end
end
+ context 'when admins is true', :enable_admin_mode do
+ let(:admin_user) { create(:user, :admin) }
+
+ it 'returns only admins' do
+ expect(
+ resolve_users( args: { admins: true }, ctx: { current_user: admin_user } )
+ ).to contain_exactly(admin_user)
+ end
+ end
+
context 'when a search term is passed' do
it 'returns all users who match', :aggregate_failures do
- expect(resolve_users(search: "some")).to contain_exactly(user1, user2)
- expect(resolve_users(search: "123784")).to contain_exactly(user2)
- expect(resolve_users(search: "someperson")).to contain_exactly(user1)
+ expect(resolve_users( args: { search: "some" } )).to contain_exactly(user1, user2)
+ expect(resolve_users( args: { search: "123784" } )).to contain_exactly(user2)
+ expect(resolve_users( args: { search: "someperson" } )).to contain_exactly(user1)
end
end
end
- def resolve_users(args = {})
- resolve(described_class, args: args)
+ def resolve_users(args: {}, ctx: {})
+ resolve(described_class, args: args, ctx: ctx)
end
end