Sha256: 7ff295c379173fc2410a86aafd10e2ef67b69635ff93d398c3935040df95ba92
Contents?: true
Size: 1.17 KB
Versions: 52
Compression:
Stored size: 1.17 KB
Contents
require 'rake' require 'foreman_tasks_test_helper' class GenerateTaskActionsTest < ActiveSupport::TestCase TASK_NAME = 'foreman_tasks:generate_task_actions'.freeze setup do Rake.application.rake_require 'foreman_tasks/tasks/generate_task_actions' Rake::Task.define_task(:environment) Rake::Task[TASK_NAME].reenable end let(:tasks) do (1..5).map { FactoryBot.build(:dynflow_task) } end it 'fixes the tasks' do label = 'a label' tasks ForemanTasks::Task.update_all(:action => nil) ForemanTasks::Task.any_instance.stubs(:to_label).returns(label) stdout, _stderr = capture_io do Rake.application.invoke_task TASK_NAME end assert_match(%r{Generating action for #{tasks.count} tasks}, stdout) _(ForemanTasks::Task.where(:action => label).count).must_equal tasks.count assert_match(%r{Processed #{tasks.count}/#{tasks.count} tasks}, stdout) end it 'fixes only tasks with missing action' do tasks ForemanTasks::Task.any_instance.expects(:save!).never stdout, _stderr = capture_io do Rake.application.invoke_task TASK_NAME end assert_match(%r{Generating action for 0 tasks}, stdout) end end
Version data entries
52 entries across 52 versions & 1 rubygems