summaryrefslogtreecommitdiff
path: root/spec/services/packages/debian/find_or_create_package_service_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/services/packages/debian/find_or_create_package_service_spec.rb')
-rw-r--r--spec/services/packages/debian/find_or_create_package_service_spec.rb12
1 files changed, 10 insertions, 2 deletions
diff --git a/spec/services/packages/debian/find_or_create_package_service_spec.rb b/spec/services/packages/debian/find_or_create_package_service_spec.rb
index f06f86b0146..84a0e1465e8 100644
--- a/spec/services/packages/debian/find_or_create_package_service_spec.rb
+++ b/spec/services/packages/debian/find_or_create_package_service_spec.rb
@@ -32,8 +32,6 @@ RSpec.describe Packages::Debian::FindOrCreatePackageService do
end
context 'run twice' do
- let(:subject2) { service.execute }
-
let(:package2) { service.execute.payload[:package] }
it 'returns the same object' do
@@ -42,6 +40,16 @@ RSpec.describe Packages::Debian::FindOrCreatePackageService do
expect(package2.id).to eq(package.id)
end
+
+ context 'with package marked as pending_destruction' do
+ it 'creates a new package' do
+ expect { subject }.to change { ::Packages::Package.count }.by(1)
+ package.pending_destruction!
+ expect { package2 }.to change { ::Packages::Package.count }.by(1)
+
+ expect(package2.id).not_to eq(package.id)
+ end
+ end
end
context 'with non-existing distribution' do