From 0f4b8320e52f1f465136c840290ccc56d9d0d151 Mon Sep 17 00:00:00 2001 From: Garrett Honeycutt Date: Mon, 20 Jan 2014 09:36:38 -0500 Subject: [PATCH] Add spec tests for hiera_merge Test for hiera_merge set to an invalid type that is not checked in the code's case statement. Also test for error message returned from validate_re(). --- spec/classes/init_spec.rb | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/spec/classes/init_spec.rb b/spec/classes/init_spec.rb index 0dfdee3..7918ceb 100644 --- a/spec/classes/init_spec.rb +++ b/spec/classes/init_spec.rb @@ -842,8 +842,8 @@ describe 'ssh' do end describe 'with hiera_merge parameter specified' do - context 'as a non-boolean' do - let(:params) { { :hiera_merge => 'not_a_boolean' } } + context 'as a non-boolean or non-string' do + let(:params) { { :hiera_merge => ['not_a_boolean','or_a_string'] } } let(:facts) do { :osfamily => 'RedHat', :lsbmajdistrelease => '6', @@ -855,6 +855,19 @@ describe 'ssh' do end end + context 'as an invalid string' do + let(:params) { { :hiera_merge => 'invalid_string' } } + let(:facts) do + { :osfamily => 'RedHat', + :lsbmajdistrelease => '6', + } + end + + it 'should fail' do + expect { should raise_error(Puppet::Error,/^ssh::hiera_merge may be either 'true' or 'false' and is set to ./) } + end + end + ['true',true].each do |value| context "as #{value}" do let(:params) { { :hiera_merge => value } }