debian-mirror-gitlab/spec/factories/releases.rb
2022-07-23 20:15:48 +02:00

40 lines
943 B
Ruby

# frozen_string_literal: true
FactoryBot.define do
factory :release do
sequence :tag do |n|
"v1.#{n}.0"
end
sha { 'b83d6e391c22777fca1ed3012fce84f633d7fed0' }
name { tag }
description { "Awesome release" }
project
author
released_at { Time.zone.parse('2018-10-20T18:00:00Z') }
trait :legacy do
sha { nil }
# Legacy releases which are created during tags creation have empty users.
after(:create) do |release, _|
release.update_column(:author_id, nil)
end
end
trait :with_evidence do
after(:create) do |release, _|
create(:evidence, release: release)
end
end
trait :with_milestones do
transient do
milestones_count { 2 }
end
after(:create) do |release, evaluator|
create_list(:milestone, evaluator.milestones_count, project: evaluator.project, releases: [release])
end
end
end
end