+
+ context 'selinux_ignore_defaults =>' do
+ let(:title) { '/etc/foo.bar' }
+
+ [true, false].each do |v|
+ context v do
+ it_behaves_like 'concat', '/etc/foo.bar', { :selinux_ignore_defaults => v }
+ end
+ end
+
+ context '123' do
+ let(:title) { '/etc/foo.bar' }
+ let(:params) {{ :selinux_ignore_defaults => 123 }}
+ it 'should fail' do
+ expect { catalogue }.to raise_error(Puppet::Error, /Evaluation Error.*expects.*Boolean.*/)
+ end
+ end
+ end # selinux_ignore_defaults =>
+
+ [
+ :selrange,
+ :selrole,
+ :seltype,
+ :seluser,
+ ].each do |p|
+ context " #{p} =>" do
+ let(:title) { '/etc/foo.bar' }
+
+ context 'foo' do
+ it_behaves_like 'concat', '/etc/foo.bar', { p => 'foo' }
+ end
+
+ context 'false' do
+ let(:title) { '/etc/foo.bar' }
+ let(:params) {{ p => false }}
+ it 'should fail' do
+ expect { catalogue }.to raise_error(Puppet::Error, /parameter '#{p}' expects.*String.*/)
+ end
+ end
+ end # #{p} =>
+ end