4 changed files with 32 additions and 32 deletions
@ -1,5 +1,15 @@
|
||||
FactoryBot.define do |
||||
factory :page, class: "Form::Page" do |
||||
id { "page_id" } |
||||
initialize_with { new(id, nil, nil) } |
||||
trait :with_question do |
||||
transient do |
||||
question_id { nil } |
||||
|
||||
after :build do |page, evaluator| |
||||
page.questions = [build(:question, id: evaluator.question_id, page:)] |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
||||
|
||||
@ -1,5 +1,15 @@
|
||||
FactoryBot.define do |
||||
factory :section, class: "Form::Section" do |
||||
id { "section_id" } |
||||
initialize_with { new(id, nil, nil) } |
||||
trait :with_questions do |
||||
transient do |
||||
question_ids { nil } |
||||
end |
||||
|
||||
after :build do |section, evaluator| |
||||
section.subsections = [build(:subsection, :with_questions, question_ids: evaluator.question_ids, section:)] |
||||
end |
||||
end |
||||
end |
||||
end |
||||
|
||||
@ -1,5 +1,15 @@
|
||||
FactoryBot.define do |
||||
factory :subsection, class: "Form::Subsection" do |
||||
id { "subsection_id" } |
||||
initialize_with { new(id, nil, nil) } |
||||
trait :with_questions do |
||||
transient do |
||||
question_ids { [] } |
||||
|
||||
after :build do |subsection, evaluator| |
||||
subsection.pages = evaluator.question_ids.map { |id| build(:page, :with_question, question_id: id, subsection:) } |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
||||
|
||||
Loading…
Reference in new issue