FactoryBot.define do factory :workflow_instance do after(:build){|instance| instance.setup_workflow_steps } state "unplanned" # default for Vula trait :uncategorized do state 'uncategorized' end trait :unplanned do state 'unplanned' end trait :planned do state 'planned' end trait :active do state 'active' after :build do |instance| instance.workflow_steps.first.state = 'processing' end end trait :overdue do state 'overdue' after :build do |instance| instance.owner_initialization.plan_date = 1.year.ago instance.contractor_initialization.state = 'overdue' end end trait :all_completed do state 'all_completed' after :build do |instance| instance.workflow_steps.each{|workflow_step| workflow_step.state = 'completed' } end end trait :any_rejected do state 'any_rejected' after :build do |instance| instance.workflow_steps.first.state = 'rejected' end end trait :with_values do end end factory :workflow_instance_for_workflow_step_test, class: 'WorkflowInstance::Scenario1', parent: :workflow_instance_scenario1 factory 'workflow_instance/scenario1', aliases: [:workflow_instance_scenario1], class: 'WorkflowInstance::Scenario1', parent: :workflow_instance factory 'workflow_instance/scenario2', aliases: [:workflow_instance_scenario2], class: 'WorkflowInstance::Scenario2', parent: :workflow_instance end