diff options
author | Douwe Maan <douwe@gitlab.com> | 2017-06-29 16:04:13 +0300 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2017-06-29 16:04:13 +0300 |
commit | 46def2045ec8ca560a7ba04cef3feac42c52e6cb (patch) | |
tree | 372da4d4a9a4ed0022a08fb3e4d716867be3ff8d /spec/models | |
parent | 572fa2cb0263b87b5323ebb0d72bc71fa252df78 (diff) | |
parent | e8ebad15e3d6f5ddbe3596a6616aafec95725261 (diff) |
Merge branch 'add-members-count-and-parent-id-data-on-namespaces-api' into 'master'
Add group members counting related data on namespaces API
See merge request !12497
Diffstat (limited to 'spec/models')
-rw-r--r-- | spec/models/namespace_spec.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/spec/models/namespace_spec.rb b/spec/models/namespace_spec.rb index e7c3acf19eb..d4f898f6d9f 100644 --- a/spec/models/namespace_spec.rb +++ b/spec/models/namespace_spec.rb @@ -323,6 +323,25 @@ describe Namespace, models: true do end end + describe '#users_with_descendants', :nested_groups do + let(:user_a) { create(:user) } + let(:user_b) { create(:user) } + + let(:group) { create(:group) } + let(:nested_group) { create(:group, parent: group) } + let(:deep_nested_group) { create(:group, parent: nested_group) } + + it 'returns member users on every nest level without duplication' do + group.add_developer(user_a) + nested_group.add_developer(user_b) + deep_nested_group.add_developer(user_a) + + expect(group.users_with_descendants).to contain_exactly(user_a, user_b) + expect(nested_group.users_with_descendants).to contain_exactly(user_a, user_b) + expect(deep_nested_group.users_with_descendants).to contain_exactly(user_a) + end + end + describe '#user_ids_for_project_authorizations' do it 'returns the user IDs for which to refresh authorizations' do expect(namespace.user_ids_for_project_authorizations) |