Loading manifests/attr.pp +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ define freeradius::attr ( Freeradius::Ensure $ensure = present, Optional[String] $key = 'User-Name', Optional[String] $prefix = 'filter', Optional[Enum['yes', 'no']] $relaxed = 'no', Optional[Enum['yes', 'no']] $relaxed = undef, ) { $fr_package = $::freeradius::params::fr_package $fr_service = $::freeradius::params::fr_service Loading spec/defines/attr_spec.rb +77 −19 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ describe 'freeradius::attr' do let(:title) { 'test' } context 'No specific relaxed value' do let(:params) do { source: 'puppet:///modules/test/path/to/file', Loading @@ -30,3 +31,60 @@ describe 'freeradius::attr' do .with_target('/etc/raddb/mods-available/attr_filter') end end context 'relaxed = no' do let(:params) do { source: 'puppet:///modules/test/path/to/file', relaxed: 'no', } end it do is_expected.to contain_file('/etc/raddb/mods-config/attr_filter/test') .that_notifies('Service[radiusd]') .that_requires('Group[radiusd]') .that_requires('Package[freeradius]') .with_ensure('present') .with_group('radiusd') .with_mode('0640') .with_owner('root') .with_source('puppet:///modules/test/path/to/file') end it do is_expected.to contain_concat__fragment('attr-test') .with_content(%r{^attr_filter filter.test {\n\s+key = "\%{User-Name}"\n\s+filename = \${modconfdir}/\${\.:name}/test\n\s+relaxed = no\n}}) .with_order('20') .with_target('/etc/raddb/mods-available/attr_filter') end end context 'relaxed = yes' do let(:params) do { source: 'puppet:///modules/test/path/to/file', relaxed: 'yes', } end it do is_expected.to contain_file('/etc/raddb/mods-config/attr_filter/test') .that_notifies('Service[radiusd]') .that_requires('Group[radiusd]') .that_requires('Package[freeradius]') .with_ensure('present') .with_group('radiusd') .with_mode('0640') .with_owner('root') .with_source('puppet:///modules/test/path/to/file') end it do is_expected.to contain_concat__fragment('attr-test') .with_content(%r{^attr_filter filter.test {\n\s+key = "\%{User-Name}"\n\s+filename = \${modconfdir}/\${\.:name}/test\n\s+relaxed = yes\n}}) .with_order('20') .with_target('/etc/raddb/mods-available/attr_filter') end end end templates/attr.erb +2 −0 Original line number Diff line number Diff line attr_filter <%= @prefix %>.<%= @name %> { key = "%{<%= @key %>}" filename = ${modconfdir}/${.:name}/<%= @name %> <% if defined?(@relaxed) -%> relaxed = <%= @relaxed %> <% end -%> } Loading
manifests/attr.pp +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ define freeradius::attr ( Freeradius::Ensure $ensure = present, Optional[String] $key = 'User-Name', Optional[String] $prefix = 'filter', Optional[Enum['yes', 'no']] $relaxed = 'no', Optional[Enum['yes', 'no']] $relaxed = undef, ) { $fr_package = $::freeradius::params::fr_package $fr_service = $::freeradius::params::fr_service Loading
spec/defines/attr_spec.rb +77 −19 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ describe 'freeradius::attr' do let(:title) { 'test' } context 'No specific relaxed value' do let(:params) do { source: 'puppet:///modules/test/path/to/file', Loading @@ -30,3 +31,60 @@ describe 'freeradius::attr' do .with_target('/etc/raddb/mods-available/attr_filter') end end context 'relaxed = no' do let(:params) do { source: 'puppet:///modules/test/path/to/file', relaxed: 'no', } end it do is_expected.to contain_file('/etc/raddb/mods-config/attr_filter/test') .that_notifies('Service[radiusd]') .that_requires('Group[radiusd]') .that_requires('Package[freeradius]') .with_ensure('present') .with_group('radiusd') .with_mode('0640') .with_owner('root') .with_source('puppet:///modules/test/path/to/file') end it do is_expected.to contain_concat__fragment('attr-test') .with_content(%r{^attr_filter filter.test {\n\s+key = "\%{User-Name}"\n\s+filename = \${modconfdir}/\${\.:name}/test\n\s+relaxed = no\n}}) .with_order('20') .with_target('/etc/raddb/mods-available/attr_filter') end end context 'relaxed = yes' do let(:params) do { source: 'puppet:///modules/test/path/to/file', relaxed: 'yes', } end it do is_expected.to contain_file('/etc/raddb/mods-config/attr_filter/test') .that_notifies('Service[radiusd]') .that_requires('Group[radiusd]') .that_requires('Package[freeradius]') .with_ensure('present') .with_group('radiusd') .with_mode('0640') .with_owner('root') .with_source('puppet:///modules/test/path/to/file') end it do is_expected.to contain_concat__fragment('attr-test') .with_content(%r{^attr_filter filter.test {\n\s+key = "\%{User-Name}"\n\s+filename = \${modconfdir}/\${\.:name}/test\n\s+relaxed = yes\n}}) .with_order('20') .with_target('/etc/raddb/mods-available/attr_filter') end end end
templates/attr.erb +2 −0 Original line number Diff line number Diff line attr_filter <%= @prefix %>.<%= @name %> { key = "%{<%= @key %>}" filename = ${modconfdir}/${.:name}/<%= @name %> <% if defined?(@relaxed) -%> relaxed = <%= @relaxed %> <% end -%> }