Project

General

Profile

Download (2.36 KB) Statistics
| Branch: | Tag: | Revision:
require 'test_helper'

class Api::V2::OsDefaultTemplatesControllerTest < ActionController::TestCase
test 'should get os_default_templates for os' do
get :index, {:operatingsystem_id => operatingsystems(:redhat).to_param }
assert_response :success
assert_not_nil assigns(:os_default_templates)
results = ActiveSupport::JSON.decode(@response.body)
assert_equal 6, results['results'].length
end

test 'should show os_default_template' do
get :show, { :operatingsystem_id => operatingsystems(:redhat).to_param, :id => os_default_templates(:one) }
assert_response :success
assert_not_nil assigns(:os_default_template)
show_response = ActiveSupport::JSON.decode(@response.body)
refute show_response.empty?
assert(show_response.has_key?('operatingsystem_id'))
end

test 'should create os_default_template for os' do
# remove all os default templates and then create one below
OsDefaultTemplate.delete_all
assert_difference('OsDefaultTemplate.count') do
post :create, { :operatingsystem_id => operatingsystems(:redhat).to_param, :os_default_template => {:provisioning_template_id => templates(:mystring).id,
:template_kind_id => template_kinds(:ipxe).id}
}
end
assert_response :created
assert_not_nil assigns(:os_default_template)
end

test 'should update os_default_template for os' do
# current fixtures has pxekickstart for PXELinux template kind. Update it to pxe_local_default
put :update, { :operatingsystem_id => operatingsystems(:redhat).to_param, :id => os_default_templates(:one),
:os_default_template => {:provisioning_template_id => templates(:pxe_local_default).id, :template_kind_id => template_kinds(:pxelinux).id}
}
assert_response :success
assert_not_nil assigns(:os_default_template)
response = ActiveSupport::JSON.decode(@response.body)
assert !response.empty?
assert_equal templates(:pxe_local_default).id, response['config_template_id']
end

test 'should destroy os_default_template for os' do
assert_difference('OsDefaultTemplate.count', -1) do
delete :destroy, { :operatingsystem_id => operatingsystems(:redhat).to_param, :id => os_default_templates(:one) }
end
assert_response :success
end
end
(29-29/50)