define apt::setting (
$setting_type,
+ $base_name = $title,
$priority = 50,
$ensure = file,
$source = undef,
validate_re($setting_type, ['conf', 'pref', 'list'])
validate_re($ensure, ['file', 'present', 'absent'])
+ validate_string($base_name)
unless is_integer($priority) {
# need this to allow zero-padded priority.
$_path = $::apt::config_files[$setting_type]['path']
$_ext = $::apt::config_files[$setting_type]['ext']
- file { "${_path}/${_priority}${title}${_ext}":
+ file { "${_path}/${_priority}${base_name}${_ext}":
ensure => $ensure,
owner => $_file['owner'],
group => $_file['group'],
it { is_expected.to contain_file('/etc/apt/apt.conf.d/100teddybear') }
end
+ describe 'with base_name=puppy' do
+ let(:params) { default_params.merge({ :base_name => 'puppy' }) }
+ it { should contain_file('/etc/apt/apt.conf.d/50puppy') }
+ end
+
+ describe 'with base_name=true' do
+ let(:params) { default_params.merge({ :base_name => true }) }
+ it do
+ expect { should compile }.to raise_error(Puppet::Error, /not a string/)
+ end
+ end
+
describe 'with ensure=absent' do
let(:params) { default_params.merge({ :ensure => 'absent' }) }
it { is_expected.to contain_file('/etc/apt/apt.conf.d/50teddybear').with({