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/services/packages/debian/create_package_file_service_spec.rb')
-rw-r--r--spec/services/packages/debian/create_package_file_service_spec.rb31
1 files changed, 19 insertions, 12 deletions
diff --git a/spec/services/packages/debian/create_package_file_service_spec.rb b/spec/services/packages/debian/create_package_file_service_spec.rb
index 291f6df991c..43928669eb1 100644
--- a/spec/services/packages/debian/create_package_file_service_spec.rb
+++ b/spec/services/packages/debian/create_package_file_service_spec.rb
@@ -2,7 +2,7 @@
require 'spec_helper'
-RSpec.describe Packages::Debian::CreatePackageFileService do
+RSpec.describe Packages::Debian::CreatePackageFileService, feature_category: :package_registry do
include WorkhorseHelpers
let_it_be(:package) { create(:debian_incoming, without_package_files: true) }
@@ -11,8 +11,9 @@ RSpec.describe Packages::Debian::CreatePackageFileService do
describe '#execute' do
let(:file_name) { 'libsample0_1.2.3~alpha2_amd64.deb' }
let(:fixture_path) { "spec/fixtures/packages/debian/#{file_name}" }
+ let(:params) { default_params }
- let(:params) do
+ let(:default_params) do
{
file: file,
file_name: file_name,
@@ -25,8 +26,15 @@ RSpec.describe Packages::Debian::CreatePackageFileService do
subject(:package_file) { service.execute }
- shared_examples 'a valid deb' do
+ shared_examples 'a valid deb' do |process_package_file_worker|
it 'creates a new package file', :aggregate_failures do
+ if process_package_file_worker
+ expect(::Packages::Debian::ProcessPackageFileWorker)
+ .to receive(:perform_async).with(an_instance_of(Integer), params[:distribution], params[:component])
+ else
+ expect(::Packages::Debian::ProcessPackageFileWorker).not_to receive(:perform_async)
+ end
+
expect(::Packages::Debian::ProcessChangesWorker).not_to receive(:perform_async)
expect(package_file).to be_valid
expect(package_file.file.read).to start_with('!<arch>')
@@ -44,7 +52,8 @@ RSpec.describe Packages::Debian::CreatePackageFileService do
shared_examples 'a valid changes' do
it 'creates a new package file', :aggregate_failures do
- expect(::Packages::Debian::ProcessChangesWorker).to receive(:perform_async)
+ expect(::Packages::Debian::ProcessChangesWorker)
+ .to receive(:perform_async).with(an_instance_of(Integer), current_user.id)
expect(package_file).to be_valid
expect(package_file.file.read).to start_with('Format: 1.8')
@@ -80,6 +89,12 @@ RSpec.describe Packages::Debian::CreatePackageFileService do
it_behaves_like 'a valid changes'
end
+ context 'with distribution' do
+ let(:params) { default_params.merge(distribution: 'unstable', component: 'main') }
+
+ it_behaves_like 'a valid deb', true
+ end
+
context 'when current_user is missing' do
let(:current_user) { nil }
@@ -137,13 +152,5 @@ RSpec.describe Packages::Debian::CreatePackageFileService do
expect { package_file }.to raise_error(ActiveRecord::RecordInvalid)
end
end
-
- context 'when FIPS mode enabled', :fips_mode do
- let(:file) { nil }
-
- it 'raises an error' do
- expect { package_file }.to raise_error(::Packages::FIPS::DisabledError)
- end
- end
end
end