context 'defaults on deb' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Debian', :release => { :major => '7', :full => '7.0' }},
:lsbdistid => 'Debian',
:osfamily => 'Debian',
:lsbdistcodename => 'wheezy',
}
end
it { is_expected.to contain_apt__source('backports').with({
- :location => 'http://ftp.debian.org/debian/',
+ :location => 'http://httpredir.debian.org/debian',
:key => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
:repos => 'main contrib non-free',
:release => 'wheezy-backports',
- :pin => 200,
+ :pin => { 'priority' => 200, 'release' => 'wheezy-backports' },
})
}
end
context 'defaults on squeeze' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Debian', :release => { :major => '6', :full => '6.0' }},
:lsbdistid => 'Debian',
:osfamily => 'Debian',
:lsbdistcodename => 'squeeze',
}
end
it { is_expected.to contain_apt__source('backports').with({
- :location => 'http://backports.debian.org/debian-backports',
+ :location => 'http://httpredir.debian.org/debian-backports',
:key => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
:repos => 'main contrib non-free',
:release => 'squeeze-backports',
- :pin => 200,
+ :pin => { 'priority' => 200, 'release' => 'squeeze-backports' },
})
}
end
context 'defaults on ubuntu' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Ubuntu', :release => { :major => '14', :full => '14.04' }},
:lsbdistid => 'Ubuntu',
:osfamily => 'Debian',
:lsbdistcodename => 'trusty',
+ :lsbdistrelease => '14.04',
:puppetversion => Puppet.version,
}
end
:key => '630239CC130E1A7FD81A27B140976EAF437D05B5',
:repos => 'main universe multiverse restricted',
:release => 'trusty-backports',
- :pin => 200,
+ :pin => { 'priority' => 200, 'release' => 'trusty-backports' },
})
}
end
context 'set everything' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Ubuntu', :release => { :major => '14', :full => '14.04' }},
:lsbdistid => 'Ubuntu',
:osfamily => 'Debian',
:lsbdistcodename => 'trusty',
+ :lsbdistrelease => '14.04',
:puppetversion => Puppet.version,
}
end
:key => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
:repos => 'main',
:release => 'vivid',
- :pin => 90,
+ :pin => { 'priority' => 90, 'release' => 'vivid' },
})
}
end
context 'set things with hashes' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Ubuntu', :release => { :major => '14', :full => '14.04' }},
:lsbdistid => 'Ubuntu',
:osfamily => 'Debian',
:lsbdistcodename => 'trusty',
+ :lsbdistrelease => '14.04',
:puppetversion => Puppet.version,
}
end
describe 'mint tests' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Linuxmint', :release => { :major => '17', :full => '17' }},
:lsbdistid => 'linuxmint',
:osfamily => 'Debian',
:lsbdistcodename => 'qiana',
:key => '630239CC130E1A7FD81A27B140976EAF437D05B5',
:repos => 'main universe multiverse restricted',
:release => 'trusty-backports',
- :pin => 200,
+ :pin => { 'priority' => 200, 'release' => 'trusty-backports' },
})
}
end
describe 'validation' do
let(:facts) do
{
+ :os => { :family => 'Debian', :name => 'Ubuntu', :release => { :major => '14', :full => '14.04' }},
:lsbdistid => 'Ubuntu',
:osfamily => 'Debian',
:lsbdistcodename => 'trusty',
+ :lsbdistrelease => '14.04',
:puppetversion => Puppet.version,
}
end
it do
expect {
subject.call
- }.to raise_error(Puppet::Error, /is not a string/)
+ }.to raise_error(Puppet::Error, /expects a String value/)
end
end
context 'invalid release' do
it do
expect {
subject.call
- }.to raise_error(Puppet::Error, /is not a string/)
+ }.to raise_error(Puppet::Error, /expects a String value/)
end
end
context 'invalid repos' do
it do
expect {
subject.call
- }.to raise_error(Puppet::Error, /is not a string/)
+ }.to raise_error(Puppet::Error, /expects a String value/)
end
end
context 'invalid key' do
it do
expect {
subject.call
- }.to raise_error(Puppet::Error, /is not a string/)
+ }.to raise_error(Puppet::Error, /expects a value of type String, Hash,/)
end
end
context 'invalid pin' do
it do
expect {
subject.call
- }.to raise_error(Puppet::Error, /pin must be either a string, number or hash/)
+ }.to raise_error(Puppet::Error, /parameter 'pin' expects a value of type Integer, Pattern/)
end
end
end