From 9c5977c821c1958709227a7a5976e1faedc53923 Mon Sep 17 00:00:00 2001 From: Thong Kuah Date: Sun, 25 Nov 2018 21:26:28 +1300 Subject: Teach Project about #all_clusters This returns a union of the project level clusters and group level clusters associated with this project. --- spec/models/project_spec.rb | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'spec/models') diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb index edb9ff4e734..5cce8d87c96 100644 --- a/spec/models/project_spec.rb +++ b/spec/models/project_spec.rb @@ -3984,6 +3984,27 @@ describe Project do end end + describe '#all_clusters' do + let(:project) { create(:project) } + let(:cluster) { create(:cluster, cluster_type: :project_type, projects: [project]) } + + subject { project.all_clusters } + + it 'returns project level cluster' do + expect(subject).to eq([cluster]) + end + + context 'project belongs to a group' do + let(:group_cluster) { create(:cluster, :group) } + let(:group) { group_cluster.group } + let(:project) { create(:project, group: group) } + + it 'returns clusters for groups of this project' do + expect(subject).to contain_exactly(cluster, group_cluster) + end + end + end + def rugged_config rugged_repo(project.repository).config end -- cgit v1.2.3