Don't add puppetlabs sources for lucid
[puppet-modules/puppetlabs-apt.git] / spec / acceptance / apt_spec.rb
1 require 'spec_helper_acceptance'
2
3 describe 'apt class' do
4
5   context 'reset' do
6     it 'fixes the sources.list' do
7       shell('cp /etc/apt/sources.list /tmp')
8     end
9   end
10
11   context 'all the things' do
12     it 'should work with no errors' do
13       pp = <<-EOS
14       class { 'apt':
15         update => {
16           'frequency' => 'always',
17           'timeout'   => '400',
18           'tries'     => '3',
19         },
20         purge => {
21           'sources.list'   => true,
22           'sources.list.d' => true,
23           'preferences'    => true,
24           'preferences.d'  => true,
25         },
26         sources => ? $::lsbdiscodename {
27           'lucid' => undef,
28           default => { 'puppetlabs' => {
29               'ensure'   => present,
30               'location' => 'http://apt.puppetlabs.com',
31               'repos'    => 'main',
32               'key'      => {
33                 'id'     => '47B320EB4C7C375AA9DAE1A01054B7A24BD6EC30',
34                 'server' => 'pgp.mit.edu',
35               },
36             },
37           },
38         },
39       }
40       EOS
41
42       apply_manifest(pp, :catch_failures => true)
43       apply_manifest(pp, :catch_failures => true)
44     end
45     it 'should still work' do
46       shell('apt-get update')
47       shell('apt-get -y --force-yes upgrade')
48     end
49   end
50
51   context 'reset' do
52     it 'fixes the sources.list' do
53       shell('cp /tmp/sources.list /etc/apt')
54     end
55   end
56
57 end