Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/finders')
-rw-r--r--spec/finders/packages/composer/packages_finder_spec.rb15
-rw-r--r--spec/finders/packages/group_packages_finder_spec.rb24
2 files changed, 36 insertions, 3 deletions
diff --git a/spec/finders/packages/composer/packages_finder_spec.rb b/spec/finders/packages/composer/packages_finder_spec.rb
index d4328827de3..1701243063b 100644
--- a/spec/finders/packages/composer/packages_finder_spec.rb
+++ b/spec/finders/packages/composer/packages_finder_spec.rb
@@ -1,18 +1,19 @@
# frozen_string_literal: true
require 'spec_helper'
-RSpec.describe ::Packages::Composer::PackagesFinder do
+RSpec.describe ::Packages::Composer::PackagesFinder, feature_category: :package_registry do
let_it_be(:user) { create(:user) }
let_it_be(:group) { create(:group) }
let_it_be(:project) { create(:project, group: group) }
- let(:params) { {} }
+ let(:params) { { package_type: :composer } }
describe '#execute' do
let_it_be(:composer_package) { create(:composer_package, project: project) }
let_it_be(:composer_package2) { create(:composer_package, project: project) }
let_it_be(:error_package) { create(:composer_package, :error, project: project) }
let_it_be(:composer_package3) { create(:composer_package) }
+ let_it_be(:nuget_package) { create(:nuget_package, project: project) }
subject { described_class.new(user, group, params).execute }
@@ -21,5 +22,15 @@ RSpec.describe ::Packages::Composer::PackagesFinder do
end
it { is_expected.to match_array([composer_package, composer_package2]) }
+
+ context 'when disabling the package registry for the project' do
+ let(:params) { super().merge(with_package_registry_enabled: true) }
+
+ before do
+ project.update!(package_registry_access_level: 'disabled', packages_enabled: false)
+ end
+
+ it { is_expected.to be_empty }
+ end
end
end
diff --git a/spec/finders/packages/group_packages_finder_spec.rb b/spec/finders/packages/group_packages_finder_spec.rb
index e4a944eb837..f78be857357 100644
--- a/spec/finders/packages/group_packages_finder_spec.rb
+++ b/spec/finders/packages/group_packages_finder_spec.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
require 'spec_helper'
-RSpec.describe Packages::GroupPackagesFinder do
+RSpec.describe Packages::GroupPackagesFinder, feature_category: :package_registry do
using RSpec::Parameterized::TableSyntax
let_it_be(:user) { create(:user) }
@@ -25,6 +25,16 @@ RSpec.describe Packages::GroupPackagesFinder do
it { is_expected.to match_array([send("package_#{package_type}")]) }
end
+ shared_examples 'disabling package registry for project' do
+ let(:params) { super().merge(with_package_registry_enabled: true) }
+
+ before do
+ project.update!(package_registry_access_level: 'disabled', packages_enabled: false)
+ end
+
+ it { is_expected.to match_array(packages_returned) }
+ end
+
def self.package_types
@package_types ||= Packages::Package.package_types.keys
end
@@ -117,6 +127,10 @@ RSpec.describe Packages::GroupPackagesFinder do
let(:user) { deploy_token_for_group }
it { is_expected.to match_array([package1, package2, package4]) }
+
+ it_behaves_like 'disabling package registry for project' do
+ let(:packages_returned) { [package4] }
+ end
end
context 'project deploy token' do
@@ -126,6 +140,11 @@ RSpec.describe Packages::GroupPackagesFinder do
let(:user) { deploy_token_for_project }
it { is_expected.to match_array([package4]) }
+
+ it_behaves_like 'disabling package registry for project' do
+ let(:project) { subproject }
+ let(:packages_returned) { [] }
+ end
end
end
@@ -200,6 +219,9 @@ RSpec.describe Packages::GroupPackagesFinder do
it_behaves_like 'concerning versionless param'
it_behaves_like 'concerning package statuses'
+ it_behaves_like 'disabling package registry for project' do
+ let(:packages_returned) { [] }
+ end
end
context 'group has package of all types' do