require 'spec_helper_acceptance'
-describe 'apt class' do
+describe 'apt class', :unless => UNSUPPORTED_PLATFORMS.include?(fact('osfamily')) do
context 'reset' do
it 'fixes the sources.list' do
pp = <<-EOS
class { 'apt':
proxy_host => 'localhost',
- proxy_port => '8080',
+ proxy_port => '7042',
}
EOS
apply_manifest(pp, :catch_failures => true)
end
- describe file('/etc/apt/apt.conf.d/proxy') do
+ describe file('/etc/apt/apt.conf.d/01proxy') do
it { should be_file }
- it { should contain 'Acquire::http::Proxy "http://localhost:8080\";' }
+ it { should contain 'Acquire::http::Proxy "http://localhost:7042\";' }
+ end
+ describe file('/etc/apt/apt.conf.d/proxy') do
+ it { should_not be_file }
end
end
pp = <<-EOS
class { 'apt':
proxy_host => 'localhost',
- proxy_port => '8080',
+ proxy_port => '7042',
}
EOS
apply_manifest(pp, :catch_failures => true)
end
- describe file('/etc/apt/apt.conf.d/proxy') do
+ describe file('/etc/apt/apt.conf.d/01proxy') do
it { should be_file }
- it { should contain 'Acquire::http::Proxy "http://localhost:8080\";' }
+ it { should contain 'Acquire::http::Proxy "http://localhost:7042\";' }
+ end
+ describe file('/etc/apt/apt.conf.d/proxy') do
+ it { should_not be_file }
end
end
end
end
+ context 'purge_preferences' do
+ context 'false' do
+ it 'creates a preferences file' do
+ shell("echo 'original' > /etc/apt/preferences")
+ end
+
+ it 'should work with no errors' do
+ pp = <<-EOS
+ class { 'apt': purge_preferences => false }
+ EOS
+
+ apply_manifest(pp, :catch_failures => true)
+ end
+
+ describe file('/etc/apt/preferences') do
+ it { should be_file }
+ it 'is not managed by Puppet' do
+ shell("grep 'original' /etc/apt/preferences", {:acceptable_exit_codes => 0})
+ end
+ end
+ end
+
+ context 'true' do
+ it 'creates a preferences file' do
+ shell('touch /etc/apt/preferences')
+ end
+
+ it 'should work with no errors' do
+ pp = <<-EOS
+ class { 'apt': purge_preferences => true }
+ EOS
+
+ apply_manifest(pp, :catch_failures => true)
+ end
+
+ describe file('/etc/apt/preferences') do
+ it { should_not be_file }
+ end
+ end
+ end
+
context 'purge_preferences_d' do
context 'false' do
it 'creates a preferences file' do
end
end
+ context 'fancy_progress => true' do
+ it 'should work with no errors' do
+ pp = <<-EOS
+ class { 'apt': fancy_progress => true }
+ EOS
+
+ apply_manifest(pp, :catch_failures => true)
+ end
+
+ describe file('/etc/apt/apt.conf.d/99progressbar') do
+ it { should be_file }
+ it { should contain 'Dpkg::Progress-Fancy "1";' }
+ end
+ end
+ context 'fancy_progress => false' do
+ it 'should work with no errors' do
+ pp = <<-EOS
+ class { 'apt': fancy_progress => false }
+ EOS
+
+ apply_manifest(pp, :catch_failures => true)
+ end
+
+ describe file('/etc/apt/apt.conf.d/99progressbar') do
+ it { should_not be_file }
+ end
+ end
+
context 'reset' do
it 'fixes the sources.list' do
shell('cp /tmp/sources.list /etc/apt')