Cleanup rspec tests of nova::cert

Change-Id: Idc358a6a20ec5525f3c12a5356d405512f9b8590
This commit is contained in:
Mathieu Gagné
2014-01-30 17:15:30 -05:00
parent baeb98d5f8
commit 3ab9b52a21
2 changed files with 53 additions and 39 deletions

View File

@@ -6,51 +6,25 @@ describe 'nova::cert' do
'include nova'
end
describe 'on debian platforms' do
context 'on Debian platforms' do
let :facts do
{ :osfamily => 'Debian' }
end
it { should contain_service('nova-cert').with(
'name' => 'nova-cert',
'ensure' => 'stopped',
'hasstatus' => true,
'enable' => false
)}
it { should contain_package('nova-cert').with(
'name' => 'nova-cert',
'ensure' => 'present',
'notify' => 'Service[nova-cert]'
)}
describe 'with enabled as true' do
let :params do
{:enabled => true}
end
it { should contain_service('nova-cert').with(
'name' => 'nova-cert',
'ensure' => 'running',
'hasstatus' => true,
'enable' => true
)}
end
describe 'with package version' do
let :params do
{:ensure_package => '2012.1-2'}
end
it { should contain_package('nova-cert').with(
'ensure' => '2012.1-2'
)}
end
it_behaves_like 'generic nova service', {
:name => 'nova-cert',
:package_name => 'nova-cert',
:service_name => 'nova-cert' }
end
describe 'on rhel' do
context 'on RedHat platforms' do
let :facts do
{ :osfamily => 'RedHat' }
end
it { should contain_service('nova-cert').with(
'name' => 'openstack-nova-cert',
'ensure' => 'stopped',
'hasstatus' => true,
'enable' => false
)}
it { should contain_package('nova-cert').with_name('openstack-nova-cert') }
it_behaves_like 'generic nova service', {
:name => 'nova-cert',
:package_name => 'openstack-nova-cert',
:service_name => 'openstack-nova-cert' }
end
end

View File

@@ -3,3 +3,43 @@ shared_examples_for "a Puppet::Error" do |description|
expect { should have_class_count(1) }.to raise_error(Puppet::Error, description)
end
end
shared_examples 'generic nova service' do |service|
context 'with default parameters' do
it 'installs package and service' do
should contain_package(service[:name]).with({
:name => service[:package_name],
:ensure => 'present',
:notify => "Service[#{service[:name]}]"
})
should contain_service(service[:name]).with({
:name => service[:service_name],
:ensure => 'stopped',
:hasstatus => true,
:enable => false
})
end
end
context 'with overridden parameters' do
let :params do
{ :enabled => true,
:ensure_package => '2012.1-2' }
end
it 'installs package and service' do
should contain_package(service[:name]).with({
:name => service[:package_name],
:ensure => '2012.1-2',
:notify => "Service[#{service[:name]}]"
})
should contain_service(service[:name]).with({
:name => service[:service_name],
:ensure => 'running',
:hasstatus => true,
:enable => true
})
end
end
end