From 141902c04943d5fb43c014b8cf42af60a3bc0cdf Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 9 Apr 2020 18:09:34 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- spec/models/clusters/cluster_spec.rb | 16 ++++++++++++++++ spec/models/group_group_link_spec.rb | 16 ++++++++++++++++ spec/models/project_group_link_spec.rb | 17 +++++++++++++++++ 3 files changed, 49 insertions(+) (limited to 'spec/models') diff --git a/spec/models/clusters/cluster_spec.rb b/spec/models/clusters/cluster_spec.rb index 8685838fdde..29c75186110 100644 --- a/spec/models/clusters/cluster_spec.rb +++ b/spec/models/clusters/cluster_spec.rb @@ -156,6 +156,22 @@ describe Clusters::Cluster, :use_clean_rails_memory_store_caching do end end + describe '.with_management_project' do + subject { described_class.with_management_project } + + context 'cluster has a management project' do + let!(:cluster) { create(:cluster, :management_project) } + + it { is_expected.to include(cluster) } + end + + context 'cluster does not have a management project' do + let!(:cluster) { create(:cluster) } + + it { is_expected.not_to include(cluster) } + end + end + describe '.for_project_namespace' do subject { described_class.for_project_namespace(namespace_id) } diff --git a/spec/models/group_group_link_spec.rb b/spec/models/group_group_link_spec.rb index a877cc803dd..1fbd399e82b 100644 --- a/spec/models/group_group_link_spec.rb +++ b/spec/models/group_group_link_spec.rb @@ -15,6 +15,22 @@ describe GroupGroupLink do it { is_expected.to belong_to(:shared_with_group) } end + describe 'scopes' do + describe '.non_guests' do + let!(:group_group_link_reporter) { create :group_group_link, :reporter } + let!(:group_group_link_maintainer) { create :group_group_link, :maintainer } + let!(:group_group_link_owner) { create :group_group_link, :owner } + let!(:group_group_link_guest) { create :group_group_link, :guest } + + it 'returns all records which are greater than Guests access' do + expect(described_class.non_guests).to match_array([ + group_group_link_reporter, group_group_link, + group_group_link_maintainer, group_group_link_owner + ]) + end + end + end + describe 'validation' do it { is_expected.to validate_presence_of(:shared_group) } diff --git a/spec/models/project_group_link_spec.rb b/spec/models/project_group_link_spec.rb index 63ce08c4d30..9c51180b55b 100644 --- a/spec/models/project_group_link_spec.rb +++ b/spec/models/project_group_link_spec.rb @@ -32,6 +32,23 @@ describe ProjectGroupLink do end end + describe 'scopes' do + describe '.non_guests' do + let!(:project_group_link_reporter) { create :project_group_link, :reporter } + let!(:project_group_link_maintainer) { create :project_group_link, :maintainer } + let!(:project_group_link_developer) { create :project_group_link } + let!(:project_group_link_guest) { create :project_group_link, :guest } + + it 'returns all records which are greater than Guests access' do + expect(described_class.non_guests).to match_array([ + project_group_link_reporter, + project_group_link_developer, + project_group_link_maintainer + ]) + end + end + end + describe "destroying a record", :delete do it "refreshes group users' authorized projects" do project = create(:project, :private) -- cgit v1.2.3