diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 11:18:50 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 11:18:50 +0000 |
commit | 8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781 (patch) | |
tree | a77e7fe7a93de11213032ed4ab1f33a3db51b738 /spec/models/members | |
parent | 00b35af3db1abfe813a778f643dad221aad51fca (diff) | |
download | gitlab-ce-8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781.tar.gz |
Add latest changes from gitlab-org/gitlab@13-1-stable-ee
Diffstat (limited to 'spec/models/members')
-rw-r--r-- | spec/models/members/group_member_spec.rb | 32 | ||||
-rw-r--r-- | spec/models/members/project_member_spec.rb | 6 |
2 files changed, 34 insertions, 4 deletions
diff --git a/spec/models/members/group_member_spec.rb b/spec/models/members/group_member_spec.rb index 9b5cce1aebf..fdb71b7ec7d 100644 --- a/spec/models/members/group_member_spec.rb +++ b/spec/models/members/group_member_spec.rb @@ -4,7 +4,7 @@ require 'spec_helper' describe GroupMember do context 'scopes' do - describe '.count_users_by_group_id' do + shared_examples '.count_users_by_group_id' do it 'counts users by group ID' do user_1 = create(:user) user_2 = create(:user) @@ -20,6 +20,36 @@ describe GroupMember do end end + describe '.count_users_by_group_id with optimized_count_users_by_group_id feature flag on' do + before do + stub_feature_flags(optimized_count_users_by_group_id: true) + end + + it_behaves_like '.count_users_by_group_id' + + it 'does not JOIN users' do + scope = described_class.all + expect(scope).not_to receive(:joins).with(:user) + + scope.count_users_by_group_id + end + end + + describe '.count_users_by_group_id with optimized_count_users_by_group_id feature flag off' do + before do + stub_feature_flags(optimized_count_users_by_group_id: false) + end + + it_behaves_like '.count_users_by_group_id' + + it 'does JOIN users' do + scope = described_class.all + expect(scope).to receive(:joins).with(:user).and_call_original + + scope.count_users_by_group_id + end + end + describe '.of_ldap_type' do it 'returns ldap type users' do group_member = create(:group_member, :ldap) diff --git a/spec/models/members/project_member_spec.rb b/spec/models/members/project_member_spec.rb index 79c39b81196..fdb9457b211 100644 --- a/spec/models/members/project_member_spec.rb +++ b/spec/models/members/project_member_spec.rb @@ -44,14 +44,14 @@ describe ProjectMember do let(:maintainer) { create(:project_member, project: project) } it "creates an expired event when left due to expiry" do - expired = create(:project_member, project: project, expires_at: Time.now - 6.days) + expired = create(:project_member, project: project, expires_at: Time.current - 6.days) expired.destroy - expect(Event.recent.first.action).to eq(Event::EXPIRED) + expect(Event.recent.first).to be_expired_action end it "creates a left event when left due to leave" do maintainer.destroy - expect(Event.recent.first.action).to eq(Event::LEFT) + expect(Event.recent.first).to be_left_action end end |