From f8ea9959587e5b7b57cf8debe938e3716c8e28fe Mon Sep 17 00:00:00 2001 From: ZhongShengping Date: Sat, 30 Apr 2016 11:22:06 +0800 Subject: [PATCH] Test multiple operating systems for keystone::db::postgresql Change-Id: If8640687019a2a5c8a0cb3ff43cc1a414aa0cdc7 --- spec/classes/keystone_db_postgresql_spec.rb | 48 +++++++-------------- 1 file changed, 16 insertions(+), 32 deletions(-) diff --git a/spec/classes/keystone_db_postgresql_spec.rb b/spec/classes/keystone_db_postgresql_spec.rb index 388a9f41d..04a1e619c 100644 --- a/spec/classes/keystone_db_postgresql_spec.rb +++ b/spec/classes/keystone_db_postgresql_spec.rb @@ -2,21 +2,13 @@ require 'spec_helper' describe 'keystone::db::postgresql' do - let :req_params do - { :password => 'pw' } - end + shared_examples_for 'keystone::db::postgresql' do + let :req_params do + { :password => 'pw' } + end - let :pre_condition do - 'include postgresql::server' - end - - context 'on a RedHat osfamily' do - let :facts do - @default_facts.merge({ - :osfamily => 'RedHat', - :operatingsystemrelease => '7.0', - :concat_basedir => '/var/lib/puppet/concat' - }) + let :pre_condition do + 'include postgresql::server' end context 'with only required parameters' do @@ -32,27 +24,19 @@ describe 'keystone::db::postgresql' do end - context 'on a Debian osfamily' do - let :facts do - @default_facts.merge({ - :operatingsystemrelease => '7.8', - :operatingsystem => 'Debian', - :osfamily => 'Debian', - :concat_basedir => '/var/lib/puppet/concat' - }) - end - - context 'with only required parameters' do - let :params do - req_params + on_supported_os({ + :supported_os => OSDefaults.get_supported_os + }).each do |os,facts| + context "on #{os}" do + let (:facts) do + facts.merge(OSDefaults.get_facts({ + :processorcount => 8, + :concat_basedir => '/var/lib/puppet/concat' + })) end - it { is_expected.to contain_postgresql__server__db('keystone').with( - :user => 'keystone', - :password => 'md5c530c33636c58ae83ca933f39319273e' - )} + it_configures 'keystone::db::postgresql' end - end end