puppet-manila/spec/classes/manila_scheduler_spec.rb
root 5b720d66d6 Manila hooks support
This code moves all deps to an external class so that Manila can be
installed with mechanisms besides packages (like venv or docker). This
also cleans-up the dependency tree by removing false or confusing
dependencies.

Change-Id: I053dbef10d51664d99e633abb714b3520a681e96
2016-10-28 11:29:34 +02:00

82 lines
2.2 KiB
Ruby

require 'spec_helper'
describe 'manila::scheduler' do
describe 'on debian platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'Debian' })
end
describe 'with default parameters' do
it { is_expected.to contain_class('manila::params') }
it { is_expected.to contain_package('manila-scheduler').with(
:name => 'manila-scheduler',
:ensure => 'present',
:tag => ['openstack', 'manila-package'],
) }
it { is_expected.to contain_service('manila-scheduler').with(
:name => 'manila-scheduler',
:enable => true,
:ensure => 'running',
:hasstatus => true,
:tag => 'manila-service',
) }
end
describe 'with parameters' do
let :params do
{ :scheduler_driver => 'manila.scheduler.filter_scheduler.FilterScheduler',
:package_ensure => 'present'
}
end
it { is_expected.to contain_manila_config('DEFAULT/scheduler_driver').with_value('manila.scheduler.filter_scheduler.FilterScheduler') }
it { is_expected.to contain_package('manila-scheduler').with_ensure('present') }
end
describe 'with manage_service false' do
let :params do
{ 'manage_service' => false
}
end
it 'should not change the state of the service' do
is_expected.to contain_service('manila-scheduler').without_ensure
end
end
end
describe 'on rhel platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
describe 'with default parameters' do
it { is_expected.to contain_class('manila::params') }
it { is_expected.to contain_service('manila-scheduler').with(
:name => 'openstack-manila-scheduler',
:enable => true,
:ensure => 'running',
:tag => 'manila-service',
) }
end
describe 'with parameters' do
let :params do
{ :scheduler_driver => 'manila.scheduler.filter_scheduler.FilterScheduler' }
end
it { is_expected.to contain_manila_config('DEFAULT/scheduler_driver').with_value('manila.scheduler.filter_scheduler.FilterScheduler') }
end
end
end