diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-05-02 15:10:10 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-05-02 15:10:10 +0000 |
commit | f62efc386492a3e7ee2243202389d29ab62b5978 (patch) | |
tree | dad7ba9a804344ed166b20cc3613de97962eea55 /spec/finders | |
parent | 610d783b61f3c3c7d19e6167df26368a7e8a0075 (diff) | |
download | gitlab-ce-f62efc386492a3e7ee2243202389d29ab62b5978.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/finders')
-rw-r--r-- | spec/finders/releases_finder_spec.rb | 126 |
1 files changed, 0 insertions, 126 deletions
diff --git a/spec/finders/releases_finder_spec.rb b/spec/finders/releases_finder_spec.rb index b0fa1177245..858a0e566f6 100644 --- a/spec/finders/releases_finder_spec.rb +++ b/spec/finders/releases_finder_spec.rb @@ -107,130 +107,4 @@ RSpec.describe ReleasesFinder do it_behaves_like 'when a tag parameter is passed' end end - - describe 'when parent is a group' do - context 'without subgroups' do - let(:project2) { create(:project, :repository, namespace: group) } - let!(:v6) { create(:release, project: project2, tag: 'v6') } - - subject { described_class.new(group, user, params).execute(**args) } - - it_behaves_like 'when the user is not part of the group' - - context 'when the user is a project guest on one sibling project' do - before do - project.add_guest(user) - v1_0_0.update_attribute(:released_at, 3.days.ago) - v1_1_0.update_attribute(:released_at, 1.day.ago) - end - - it 'does not return any releases' do - expect(subject.size).to eq(0) - expect(subject).to eq([]) - end - end - - context 'when the user is a guest on the group' do - before do - group.add_guest(user) - v1_0_0.update_attribute(:released_at, 3.days.ago) - v6.update_attribute(:released_at, 2.days.ago) - v1_1_0.update_attribute(:released_at, 1.day.ago) - end - - it 'sorts by release date' do - expect(subject.size).to eq(3) - expect(subject).to eq([v1_1_0, v6, v1_0_0]) - end - - it_behaves_like 'when a tag parameter is passed' - end - end - - describe 'with subgroups' do - let(:params) { { include_subgroups: true } } - - subject { described_class.new(group, user, params).execute(**args) } - - context 'with a single-level subgroup' do - let(:subgroup) { create :group, parent: group } - let(:project2) { create(:project, :repository, namespace: subgroup) } - let!(:v6) { create(:release, project: project2, tag: 'v6') } - - it_behaves_like 'when the user is not part of the group' - - context 'when the user a project guest in the subgroup project' do - before do - project2.add_guest(user) - end - - it 'does not return any releases' do - expect(subject).to match_array([]) - end - end - - context 'when the user is a guest on the group' do - before do - group.add_guest(user) - v6.update_attribute(:released_at, 2.days.ago) - end - - it 'returns all releases' do - expect(subject).to match_array([v1_1_0, v1_0_0, v6]) - end - - it_behaves_like 'when a tag parameter is passed' - end - end - - context 'with a multi-level subgroup' do - let(:subgroup) { create :group, parent: group } - let(:subsubgroup) { create :group, parent: subgroup } - let(:project2) { create(:project, :repository, namespace: subgroup) } - let(:project3) { create(:project, :repository, namespace: subsubgroup) } - let!(:v6) { create(:release, project: project2, tag: 'v6') } - let!(:p3) { create(:release, project: project3, tag: 'p3') } - - before do - v6.update_attribute(:released_at, 2.days.ago) - p3.update_attribute(:released_at, 3.days.ago) - end - - it_behaves_like 'when the user is not part of the group' - - context 'when the user a project guest in the subgroup and subsubgroup project' do - before do - project2.add_guest(user) - project3.add_guest(user) - end - - it 'does not return any releases' do - expect(subject).to match_array([]) - end - end - - context 'when the user a project guest in the subsubgroup project' do - before do - project3.add_guest(user) - end - - it 'does not return any releases' do - expect(subject).to match_array([]) - end - end - - context 'when the user a guest on the group' do - before do - group.add_guest(user) - end - - it 'returns all releases' do - expect(subject).to match_array([v1_1_0, v6, v1_0_0, p3]) - end - - it_behaves_like 'when a tag parameter is passed' - end - end - end - end end |