Update tests with rspec facts

This patch updates tests that perform on Debian/RedHat sets to use
on_supported_os from rspec-puppet-facts.

Change-Id: I4b7bec3e0b314cda34e41bda3892847a23325bb9
This commit is contained in:
Nate Potter 2016-04-22 14:15:11 -07:00
parent 3545f54f29
commit ac3b678746
6 changed files with 128 additions and 151 deletions

@ -1,6 +1,7 @@
require 'spec_helper' require 'spec_helper'
describe 'magnum::db::mysql' do describe 'magnum::db::mysql' do
shared_examples_for 'magnum::db::mysql' do
let :pre_condition do let :pre_condition do
[ [
@ -9,17 +10,13 @@ describe 'magnum::db::mysql' do
] ]
end end
let :facts do
@default_facts.merge({ :osfamily => 'Debian' })
end
let :params do let :params do
{ {
'password' => 'secrete', 'password' => 'secrete',
} }
end end
describe 'with only required params' do context 'with only required params' do
it { is_expected.to contain_openstacklib__db__mysql('magnum').with( it { is_expected.to contain_openstacklib__db__mysql('magnum').with(
:user => 'magnum', :user => 'magnum',
:password_hash => '*FBA9D2346613CFE4A811FC2A4A648432C6FA2CFD', :password_hash => '*FBA9D2346613CFE4A811FC2A4A648432C6FA2CFD',
@ -30,7 +27,7 @@ describe 'magnum::db::mysql' do
)} )}
end end
describe "overriding allowed_hosts param to array" do context "overriding allowed_hosts param to array" do
let :params do let :params do
{ {
:password => 'secrete', :password => 'secrete',
@ -50,7 +47,7 @@ describe 'magnum::db::mysql' do
end end
describe "overriding allowed_hosts param to string" do context "overriding allowed_hosts param to string" do
let :params do let :params do
{ {
:password => 'secrete', :password => 'secrete',
@ -70,7 +67,7 @@ describe 'magnum::db::mysql' do
end end
describe "overriding allowed_hosts equal to host param" do context "overriding allowed_hosts equal to host param" do
let :params do let :params do
{ {
:password => 'secrete', :password => 'secrete',
@ -89,5 +86,17 @@ describe 'magnum::db::mysql' do
)} )}
end end
end
on_supported_os({
:supported_os => OSDefaults.get_supported_os
}).each do |os,facts|
context "os #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end
it_configures 'magnum::db::mysql'
end
end
end end

@ -54,27 +54,15 @@ describe 'magnum::db' do
end end
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ }).each do |os,facts|
:osfamily => 'Debian', context "on #{os}" do
:operatingsystem => 'Debian', let (:facts) do
:operatingsystemrelease => 'jessie', facts.merge!(OSDefaults.get_facts())
})
end end
it_configures 'magnum::db' it_configures 'magnum::db'
end end
context 'on Redhat platforms' do
let :facts do
@default_facts.merge({
:osfamily => 'RedHat',
:operatingsystemrelease => '7.1',
})
end end
it_configures 'magnum::db'
end
end end

@ -152,36 +152,25 @@ describe 'magnum' do
end end
end end
context 'on Ubuntu platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ }).each do |os,facts|
:osfamily => 'Debian', context "on #{os}" do
:operatingsystem => 'Ubuntu' let (:facts) do
}) facts.merge(OSDefaults.get_facts({:processorcount => 8}))
end end
let :platform_params do let :platform_params do
{ :magnum_common_package => 'nova-common', if facts[:os_family] == 'Debian'
:lock_path => '/var/lock/nova' { :magnum_common_package => 'magnum-common' }
} else
{ :magnum_common_package => 'openstack-magnum-common' }
end
end end
it_behaves_like 'magnum' it_behaves_like 'magnum'
end end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
{ :nova_common_package => 'openstack-nova-common',
:lock_path => '/var/lib/nova/tmp'
}
end
it_behaves_like 'magnum'
end end
end end

@ -7,7 +7,7 @@ require 'spec_helper'
describe 'magnum::keystone::auth' do describe 'magnum::keystone::auth' do
let :facts do let :facts do
@default_facts.merge({ :osfamily => 'Debian' }) OSDefaults.get_facts({ :osfamily => 'Debian' })
end end
describe 'with default class parameters' do describe 'with default class parameters' do

@ -122,20 +122,15 @@ describe 'magnum::logging' do
} }
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
it_configures 'magnum-logging' it_behaves_like 'magnum-logging'
end end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end end
it_configures 'magnum-logging'
end
end end

@ -24,19 +24,15 @@ describe 'magnum::policy' do
end end
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
it_configures 'magnum policies' it_behaves_like 'magnum policies'
end end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
it_configures 'magnum policies'
end end
end end