Genshin/GAKUEngine

View on GitHub
core/lib/gaku/testing/factories/exam_factory.rb

Summary

Maintainability
A
0 mins
Test Coverage
FactoryBot.define do
  factory :exam, class: Gaku::Exam do
    name { 'Math exam' }
    weight { 4 }
    use_weighting { true }

    factory :invalid_exam do
      name { nil }
    end
  end

  trait :with_portion do
    after(:create) do |exam|
      exam.exam_portions << create(:exam_portion, exam: exam)
      exam.save
    end
  end

  trait :with_portions do
    after(:create) do |exam|
      exam.exam_portions << create(:exam_portion, exam: exam)
      exam.exam_portions << create(:exam_portion, exam: exam)
      exam.save
    end
  end
end