58 lines
1.5 KiB
Ruby
58 lines
1.5 KiB
Ruby
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
|
|
|