diff options
Diffstat (limited to 'spec/factories/design_management/design_at_version.rb')
-rw-r--r-- | spec/factories/design_management/design_at_version.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/factories/design_management/design_at_version.rb b/spec/factories/design_management/design_at_version.rb new file mode 100644 index 00000000000..b73df71595c --- /dev/null +++ b/spec/factories/design_management/design_at_version.rb @@ -0,0 +1,23 @@ +# frozen_string_literal: true + +FactoryBot.define do + factory :design_at_version, class: 'DesignManagement::DesignAtVersion' do + skip_create # This is not an Active::Record model. + + design { nil } + + version { nil } + + transient do + issue { design&.issue || version&.issue || create(:issue) } + end + + initialize_with do + attrs = attributes.dup + attrs[:design] ||= create(:design, issue: issue) + attrs[:version] ||= create(:design_version, issue: issue) + + new(attrs) + end + end +end |