+++ /dev/null
-require 'spec_helper_acceptance'
-
-case fact('osfamily')
-when 'RedHat'
- mod_dir = '/etc/httpd/conf.d'
- servicename = 'httpd'
-when 'Debian'
- mod_dir = '/etc/apache2/mods-available'
- servicename = 'apache2'
-when 'FreeBSD'
- mod_dir = '/usr/local/etc/apache24/Modules'
- servicename = 'apache24'
-when 'Gentoo'
- mod_dir = '/etc/apache2/modules.d'
- servicename = 'apache2'
-end
-
-describe 'apache::default_mods class', :unless => UNSUPPORTED_PLATFORMS.include?(fact('osfamily')) do
- describe 'no default mods' do
- # Using puppet_apply as a helper
- it 'should apply with no errors' do
- pp = <<-EOS
- class { 'apache':
- default_mods => false,
- }
- EOS
-
- # Run it twice and test for idempotency
- apply_manifest(pp, :catch_failures => true)
- expect(apply_manifest(pp, :catch_failures => true).exit_code).to be_zero
- end
-
- describe service(servicename) do
- it { is_expected.to be_running }
- end
- end
-
- describe 'no default mods and failing' do
- # Using puppet_apply as a helper
- it 'should apply with errors' do
- pp = <<-EOS
- class { 'apache':
- default_mods => false,
- }
- apache::vhost { 'defaults.example.com':
- docroot => '/var/www/defaults',
- aliases => {
- alias => '/css',
- path => '/var/www/css',
- },
- setenv => 'TEST1 one',
- }
- EOS
-
- apply_manifest(pp, { :expect_failures => true })
- end
-
- # Are these the same?
- describe service(servicename) do
- it { is_expected.not_to be_running }
- end
- describe "service #{servicename}" do
- it 'should not be running' do
- shell("pidof #{servicename}", {:acceptable_exit_codes => 1})
- end
- end
- end
-
- describe 'alternative default mods' do
- # Using puppet_apply as a helper
- it 'should apply with no errors' do
- pp = <<-EOS
- class { 'apache':
- default_mods => [
- 'info',
- 'alias',
- 'mime',
- 'env',
- 'expires',
- ],
- }
- apache::vhost { 'defaults.example.com':
- docroot => '/var/www/defaults',
- aliases => {
- alias => '/css',
- path => '/var/www/css',
- },
- setenv => 'TEST1 one',
- }
- EOS
-
- apply_manifest(pp, :catch_failures => true)
- shell('sleep 10')
- expect(apply_manifest(pp, :catch_failures => true).exit_code).to be_zero
- end
-
- describe service(servicename) do
- it { is_expected.to be_running }
- end
- end
-
- describe 'change loadfile name' do
- it 'should apply with no errors' do
- pp = <<-EOS
- class { 'apache': default_mods => false }
- ::apache::mod { 'auth_basic':
- loadfile_name => 'zz_auth_basic.load',
- }
- EOS
- # Run it twice and test for idempotency
- apply_manifest(pp, :catch_failures => true)
- expect(apply_manifest(pp, :catch_failures => true).exit_code).to be_zero
- end
-
- describe service(servicename) do
- it { is_expected.to be_running }
- end
-
- describe file("#{mod_dir}/zz_auth_basic.load") do
- it { is_expected.to be_file }
- end
- end
-end