Sha256: b20693a25b60e8bb36203e4539c5f1c806226fac43ad6240e04f962cbe53971c
Contents?: true
Size: 1.72 KB
Versions: 1
Compression:
Stored size: 1.72 KB
Contents
require "foreman_tasks_test_helper" module ForemanTasks class Api::TasksControllerTest < ActionController::TestCase describe 'tasks api controller' do tests ForemanTasks::Api::TasksController before do User.current = User.where(:login => 'apiadmin').first @request.env['HTTP_ACCEPT'] = 'application/json' @request.env['CONTENT_TYPE'] = 'application/json' end describe 'GET /api/tasks/show' do it 'searches for task' do task = FactoryGirl.create(:dynflow_task, :user_create_task) get(:show, :id => task.id) assert_response :success assert_template 'api/tasks/show' end end describe 'POST /tasks/callback' do self.use_transactional_fixtures = false it 'passes the data to the corresponding action' do Support::DummyProxyAction.reset triggered = ForemanTasks.trigger(Support::DummyProxyAction, Support::DummyProxyAction.proxy, 'foo' => 'bar') Support::DummyProxyAction.proxy.task_triggered.wait(5) task = ForemanTasks::Task.find_by_external_id(triggered.id) task.state.must_equal 'running' task.result.must_equal 'pending' callback = Support::DummyProxyAction.proxy.log[:trigger_task].first[1][:callback] post(:callback, 'callback' => callback, 'data' => {'result' => 'success'}) triggered.finished.wait(5) task.reload task.state.must_equal 'stopped' task.result.must_equal 'success' task.main_action.output.must_equal({ "proxy_task_id" => "123", "proxy_output" => { "result" => "success" }}) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
foreman-tasks-0.7.3 | test/controllers/api/tasks_controller_test.rb |