summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Rüttimann <ror@panter.ch>2019-02-06 12:17:47 +0100
committerRoger Meier <r.meier@siemens.com>2019-06-13 08:43:14 +0200
commit2a1c2c673f25aa1329e045bd907babbea037a9f1 (patch)
tree0b44496680393ddaef51e39c8f110d25cd451cbf
parent8bfc3a26a31fd48fd7af7a7ecd67102b04e9d66b (diff)
downloadgitlab-ce-2a1c2c673f25aa1329e045bd907babbea037a9f1.tar.gz
add tests for 2fa requirment for all sub-entities members (subgroup and projects)
-rw-r--r--spec/models/group_spec.rb28
1 files changed, 24 insertions, 4 deletions
diff --git a/spec/models/group_spec.rb b/spec/models/group_spec.rb
index e6e7298a043..551d85bda6c 100644
--- a/spec/models/group_spec.rb
+++ b/spec/models/group_spec.rb
@@ -625,10 +625,7 @@ describe Group do
group.update!(description: 'foobar')
end
- it 'calls #update_two_factor_requirement on each group member' do
- other_user = create(:user)
- group.add_user(other_user, GroupMember::OWNER)
-
+ def expects_other_user_to_require_two_factors
calls = 0
allow_any_instance_of(User).to receive(:update_two_factor_requirement) do
calls += 1
@@ -638,6 +635,29 @@ describe Group do
expect(calls).to eq 2
end
+
+ it 'calls #update_two_factor_requirement on each group member' do
+ other_user = create(:user)
+ group.add_user(other_user, GroupMember::OWNER)
+
+ expects_other_user_to_require_two_factors
+ end
+
+ it 'calls #update_two_factor_requirement on each subgroup member' do
+ subgroup = create(:group, :nested, parent: group)
+ subgroup_user = create(:user)
+ subgroup.add_user(subgroup_user, GroupMember::OWNER)
+
+ expects_other_user_to_require_two_factors
+ end
+
+ it 'calls #update_two_factor_requirement on each child project member' do
+ project = create(:project, group: group)
+ project_user = create(:user)
+ project.add_user(project_user, GroupMember::OWNER)
+
+ expects_other_user_to_require_two_factors
+ end
end
describe '#path_changed_hook' do