Sha256: 77914ffce0869116b0b2dca35e71255beb0382be019b1bce497fc18741c65aca

Contents?: true

Size: 1.38 KB

Versions: 13

Compression:

Stored size: 1.38 KB

Contents

FactoryBot.define do
  factory :some_task, :class => ForemanTasks::Task do
    sequence(:label) { |n| "task#{n}" }
    type { 'ForemanTasks::Task' }
    state { 'stopped' }
    result { 'success' }

    factory :dynflow_task, :class => ForemanTasks::Task::DynflowTask do
      label { 'Support::DummyDynflowAction' }
      type { 'ForemanTasks::Task::DynflowTask' }
      started_at { '2014-10-01 11:15:55' }
      ended_at { '2014-10-01 11:15:57' }
      state { 'stopped' }
      result { 'success' }
      parent_task_id { nil }

      transient do
        sync_with_dynflow { false }
      end

      after(:build) do |task, evaluator|
        execution_plan = ForemanTasks.dynflow.world.plan(Support::DummyDynflowAction)
        # remove the task created automatically by the persistence
        ForemanTasks::Task.where(:external_id => execution_plan.id).delete_all
        task.update_attributes!(:external_id => execution_plan.id)
        if evaluator.sync_with_dynflow
          task.update_from_dynflow(execution_plan.to_hash)
        end
      end

      trait :user_create_task do
        label { 'Actions::User::Create' }
      end

      trait :product_create_task do
        label { 'Actions::Katello::Product::Create' }
      end

      trait :inconsistent_dynflow_task do
        after(:build) do |task|
          task.update_attributes!(:state => 'running')
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
foreman-tasks-0.17.6 test/factories/task_factory.rb
foreman-tasks-1.0.1 test/factories/task_factory.rb
foreman-tasks-1.0.0 test/factories/task_factory.rb
foreman-tasks-0.17.5 test/factories/task_factory.rb
foreman-tasks-0.17.4 test/factories/task_factory.rb
foreman-tasks-0.17.3 test/factories/task_factory.rb
foreman-tasks-0.17.2 test/factories/task_factory.rb
foreman-tasks-0.16.3 test/factories/task_factory.rb
foreman-tasks-0.17.1 test/factories/task_factory.rb
foreman-tasks-0.16.2 test/factories/task_factory.rb
foreman-tasks-0.16.1 test/factories/task_factory.rb
foreman-tasks-0.17.0 test/factories/task_factory.rb
foreman-tasks-0.16.0 test/factories/task_factory.rb