3 describe 'apache::mod::ssl', :type => :class do
7 context 'on an unsupported OS' do
11 :operatingsystemrelease => '0',
12 :concat_basedir => '/dne',
13 :operatingsystem => 'Magic',
16 :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
20 it { expect { catalogue }.to raise_error(Puppet::Error, /Unsupported osfamily:/) }
23 context 'on a RedHat OS' do
26 :osfamily => 'RedHat',
27 :operatingsystemrelease => '6',
28 :concat_basedir => '/dne',
29 :operatingsystem => 'RedHat',
32 :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
36 it { is_expected.to contain_class('apache::params') }
37 it { is_expected.to contain_apache__mod('ssl') }
38 it { is_expected.to contain_package('mod_ssl') }
39 context 'with a custom package_name parameter' do
41 { :package_name => 'httpd24-mod_ssl' }
43 it { is_expected.to contain_class('apache::params') }
44 it { is_expected.to contain_apache__mod('ssl') }
45 it { is_expected.to contain_package('httpd24-mod_ssl') }
46 it { is_expected.not_to contain_package('mod_ssl') }
50 context 'on a Debian OS' do
53 :osfamily => 'Debian',
54 :operatingsystemrelease => '6',
55 :concat_basedir => '/dne',
56 :lsbdistcodename => 'squeeze',
57 :operatingsystem => 'Debian',
60 :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
64 it { is_expected.to contain_class('apache::params') }
65 it { is_expected.to contain_apache__mod('ssl') }
66 it { is_expected.not_to contain_package('libapache2-mod-ssl') }
69 context 'on a FreeBSD OS' do
72 :osfamily => 'FreeBSD',
73 :operatingsystemrelease => '9',
74 :concat_basedir => '/dne',
75 :operatingsystem => 'FreeBSD',
78 :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
82 it { is_expected.to contain_class('apache::params') }
83 it { is_expected.to contain_apache__mod('ssl') }
86 context 'on a Gentoo OS' do
89 :osfamily => 'Gentoo',
90 :operatingsystem => 'Gentoo',
91 :operatingsystemrelease => '3.16.1-gentoo',
92 :concat_basedir => '/dne',
95 :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin',
99 it { is_expected.to contain_class('apache::params') }
100 it { is_expected.to contain_apache__mod('ssl') }
103 # Template config doesn't vary by distro
104 context "on all distros" do
107 :osfamily => 'RedHat',
108 :operatingsystem => 'CentOS',
109 :operatingsystemrelease => '6',
112 :concat_basedir => '/dne',
113 :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
118 context 'not setting ssl_pass_phrase_dialog' do
119 it { is_expected.to contain_file('ssl.conf').with_content(/^ SSLPassPhraseDialog builtin$/)}
122 context 'setting ssl_pass_phrase_dialog' do
125 :ssl_pass_phrase_dialog => 'exec:/path/to/program',
128 it { is_expected.to contain_file('ssl.conf').with_content(/^ SSLPassPhraseDialog exec:\/path\/to\/program$/)}
131 context 'setting ssl_random_seed_bytes' do
134 :ssl_random_seed_bytes => '1024',
137 it { is_expected.to contain_file('ssl.conf').with_content(%r{^ SSLRandomSeed startup file:/dev/urandom 1024$})}