Merge pull request #496 from puppetlabs/allow-undef-content-conf

apt::conf: Don't require content `ensure=>absent`.
This commit is contained in:
Morgan Haskel 2015-04-14 08:24:03 -07:00
commit db9daeb183
2 changed files with 20 additions and 3 deletions

View file

@ -1,8 +1,15 @@
define apt::conf (
$content,
$content = undef,
$ensure = present,
$priority = '50',
) {
unless $ensure == 'absent' {
unless $content {
fail('Need to pass in content parameter')
}
}
apt::setting { "conf-${name}":
ensure => $ensure,
priority => $priority,

View file

@ -30,12 +30,23 @@ describe 'apt::conf', :type => :define do
}
end
describe "when creating a preference without content" do
let :params do
{
:priority => '00',
}
end
it 'fails' do
expect { subject } .to raise_error(/pass in content/)
end
end
describe "when removing an apt preference" do
let :params do
{
:ensure => 'absent',
:priority => '00',
:content => "Apt::Install-Recommends 0;\nApt::AutoRemove::InstallRecommends 1;\n"
}
end
@ -45,7 +56,6 @@ describe 'apt::conf', :type => :define do
it { is_expected.to contain_file(filename).with({
'ensure' => 'absent',
'content' => /Apt::Install-Recommends 0;\nApt::AutoRemove::InstallRecommends 1;/,
'owner' => 'root',
'group' => 'root',
'mode' => '0644',