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/presenters/packages/npm/package_presenter_spec.rb')
-rw-r--r--spec/presenters/packages/npm/package_presenter_spec.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/spec/presenters/packages/npm/package_presenter_spec.rb b/spec/presenters/packages/npm/package_presenter_spec.rb
index 3b6dfcd20b8..2308f928c92 100644
--- a/spec/presenters/packages/npm/package_presenter_spec.rb
+++ b/spec/presenters/packages/npm/package_presenter_spec.rb
@@ -95,6 +95,27 @@ RSpec.describe ::Packages::Npm::PackagePresenter do
end
end
end
+
+ context 'with package files pending destruction' do
+ let_it_be(:package_file_pending_destruction) { create(:package_file, :pending_destruction, package: package2, file_sha1: 'pending_destruction_sha1') }
+
+ let(:shasums) { subject.values.map { |v| v.dig(:dist, :shasum) } }
+
+ it 'does not return them' do
+ expect(shasums).not_to include(package_file_pending_destruction.file_sha1)
+ end
+
+ context 'with packages_installable_package_files disabled' do
+ before do
+ stub_feature_flags(packages_installable_package_files: false)
+ package2.package_files.id_not_in(package_file_pending_destruction.id).delete_all
+ end
+
+ it 'returns them' do
+ expect(shasums).to include(package_file_pending_destruction.file_sha1)
+ end
+ end
+ end
end
describe '#dist_tags' do