diff options
Diffstat (limited to 'spec/factories/packages/debian')
-rw-r--r-- | spec/factories/packages/debian/component_file.rb | 6 | ||||
-rw-r--r-- | spec/factories/packages/debian/distribution_key.rb | 16 | ||||
-rw-r--r-- | spec/factories/packages/debian/file_metadatum.rb | 48 |
3 files changed, 68 insertions, 2 deletions
diff --git a/spec/factories/packages/debian/component_file.rb b/spec/factories/packages/debian/component_file.rb index 19157b3c8c6..9aee91b0973 100644 --- a/spec/factories/packages/debian/component_file.rb +++ b/spec/factories/packages/debian/component_file.rb @@ -2,6 +2,10 @@ FactoryBot.define do factory :debian_project_component_file, class: 'Packages::Debian::ProjectComponentFile' do + transient do + file_fixture { 'spec/fixtures/packages/debian/distribution/Packages' } + end + component { association(:debian_project_component) } architecture { association(:debian_project_architecture, distribution: component.distribution) } @@ -13,7 +17,7 @@ FactoryBot.define do file_type { :packages } after(:build) do |component_file, evaluator| - component_file.file = fixture_file_upload('spec/fixtures/packages/debian/distribution/Packages') + component_file.file = fixture_file_upload(evaluator.file_fixture) if evaluator.file_fixture.present? end file_md5 { '12345abcde' } diff --git a/spec/factories/packages/debian/distribution_key.rb b/spec/factories/packages/debian/distribution_key.rb new file mode 100644 index 00000000000..6bd457c50d0 --- /dev/null +++ b/spec/factories/packages/debian/distribution_key.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +FactoryBot.define do + factory :debian_project_distribution_key, class: 'Packages::Debian::ProjectDistributionKey' do + distribution { association(:debian_project_distribution) } + + private_key { '-----BEGIN PGP PRIVATE KEY BLOCK-----' } + passphrase { '12345' } + public_key { '-----BEGIN PGP PUBLIC KEY BLOCK-----' } + fingerprint { '12345' } + + factory :debian_group_distribution_key, class: 'Packages::Debian::GroupDistributionKey' do + distribution { association(:debian_group_distribution) } + end + end +end diff --git a/spec/factories/packages/debian/file_metadatum.rb b/spec/factories/packages/debian/file_metadatum.rb index 088d0140afe..f761dd18b4e 100644 --- a/spec/factories/packages/debian/file_metadatum.rb +++ b/spec/factories/packages/debian/file_metadatum.rb @@ -33,7 +33,53 @@ FactoryBot.define do file_type { 'deb' } component { 'main' } architecture { 'amd64' } - fields { { 'a': 'b' } } + fields do + { + 'Package' => 'libsample0', + 'Source' => package_file.package.name, + 'Version' => package_file.package.version, + 'Architecture' => 'amd64', + 'Maintainer' => "#{FFaker::Name.name} <#{FFaker::Internet.email}>", + 'Installed-Size' => '7', + 'Section' => 'libs', + 'Priority' => 'optional', + 'Multi-Arch' => 'same', + 'Homepage' => FFaker::Internet.http_url, + 'Description' => <<~EOF.rstrip + Some mostly empty lib + Used in GitLab tests. + + Testing another paragraph. + EOF + } + end + end + + trait(:deb_dev) do + file_type { 'deb' } + component { 'main' } + architecture { 'amd64' } + fields do + { + 'Package' => 'sample-dev', + 'Source' => "#{package_file.package.name} (#{package_file.package.version})", + 'Version' => '1.2.3~binary', + 'Architecture' => 'amd64', + 'Maintainer' => "#{FFaker::Name.name} <#{FFaker::Internet.email}>", + 'Installed-Size' => '7', + 'Depends' => 'libsample0 (= 1.2.3~binary)', + 'Section' => 'libdevel', + 'Priority' => 'optional', + 'Multi-Arch' => 'same', + 'Homepage' => FFaker::Internet.http_url, + 'Description' => <<~EOF.rstrip + Some mostly empty development files + Used in GitLab tests. + + Testing another paragraph. + EOF + } + end end trait(:udeb) do |