]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/apache/spec/defines/mod_spec.rb
add Openstack modules to 3rdparty
[dsa-puppet.git] / 3rdparty / modules / apache / spec / defines / mod_spec.rb
1 require 'spec_helper'
2
3 describe 'apache::mod', :type => :define do
4   let :pre_condition do
5     'include apache'
6   end
7   context "on a RedHat osfamily" do
8     let :facts do
9       {
10         :osfamily               => 'RedHat',
11         :operatingsystemrelease => '6',
12         :concat_basedir         => '/dne',
13         :operatingsystem        => 'RedHat',
14         :id                     => 'root',
15         :kernel                 => 'Linux',
16         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
17         :is_pe                  => false,
18       }
19     end
20
21     describe "for non-special modules" do
22       let :title do
23         'spec_m'
24       end
25       it { is_expected.to contain_class("apache::params") }
26       it "should manage the module load file" do
27         is_expected.to contain_file('spec_m.load').with({
28           :path    => '/etc/httpd/conf.d/spec_m.load',
29           :content => "LoadModule spec_m_module modules/mod_spec_m.so\n",
30           :owner   => 'root',
31           :group   => 'root',
32           :mode    => '0644',
33         } )
34       end
35     end
36
37     describe "with shibboleth module and package param passed" do
38       # name/title for the apache::mod define
39       let :title do
40         'xsendfile'
41       end
42       # parameters
43       let(:params) { {:package => 'mod_xsendfile'} }
44
45       it { is_expected.to contain_class("apache::params") }
46       it { is_expected.to contain_package('mod_xsendfile') }
47     end
48   end
49
50   context "on a Debian osfamily" do
51     let :facts do
52       {
53         :osfamily               => 'Debian',
54         :operatingsystemrelease => '6',
55         :concat_basedir         => '/dne',
56         :lsbdistcodename        => 'squeeze',
57         :operatingsystem        => 'Debian',
58         :id                     => 'root',
59         :kernel                 => 'Linux',
60         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
61         :is_pe                  => false,
62       }
63     end
64
65     describe "for non-special modules" do
66       let :title do
67         'spec_m'
68       end
69       it { is_expected.to contain_class("apache::params") }
70       it "should manage the module load file" do
71         is_expected.to contain_file('spec_m.load').with({
72           :path    => '/etc/apache2/mods-available/spec_m.load',
73           :content => "LoadModule spec_m_module /usr/lib/apache2/modules/mod_spec_m.so\n",
74           :owner   => 'root',
75           :group   => 'root',
76           :mode    => '0644',
77         } )
78       end
79       it "should link the module load file" do
80         is_expected.to contain_file('spec_m.load symlink').with({
81           :path   => '/etc/apache2/mods-enabled/spec_m.load',
82           :target => '/etc/apache2/mods-available/spec_m.load',
83           :owner   => 'root',
84           :group   => 'root',
85           :mode    => '0644',
86         } )
87       end
88     end
89   end
90
91   context "on a FreeBSD osfamily" do
92     let :facts do
93       {
94         :osfamily               => 'FreeBSD',
95         :operatingsystemrelease => '9',
96         :concat_basedir         => '/dne',
97         :operatingsystem        => 'FreeBSD',
98         :id                     => 'root',
99         :kernel                 => 'FreeBSD',
100         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
101         :is_pe                  => false,
102       }
103     end
104
105     describe "for non-special modules" do
106       let :title do
107         'spec_m'
108       end
109       it { is_expected.to contain_class("apache::params") }
110       it "should manage the module load file" do
111         is_expected.to contain_file('spec_m.load').with({
112           :path    => '/usr/local/etc/apache24/Modules/spec_m.load',
113           :content => "LoadModule spec_m_module /usr/local/libexec/apache24/mod_spec_m.so\n",
114           :owner   => 'root',
115           :group   => 'wheel',
116           :mode    => '0644',
117         } )
118       end
119     end
120   end
121
122   context "on a Gentoo osfamily" do
123     let :facts do
124       {
125         :osfamily               => 'Gentoo',
126         :operatingsystem        => 'Gentoo',
127         :operatingsystemrelease => '3.16.1-gentoo',
128         :concat_basedir         => '/dne',
129         :id                     => 'root',
130         :kernel                 => 'Linux',
131         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin',
132         :is_pe                  => false,
133       }
134     end
135
136     describe "for non-special modules" do
137       let :title do
138         'spec_m'
139       end
140       it { is_expected.to contain_class("apache::params") }
141       it "should manage the module load file" do
142         is_expected.to contain_file('spec_m.load').with({
143           :path    => '/etc/apache2/modules.d/spec_m.load',
144           :content => "LoadModule spec_m_module /usr/lib/apache2/modules/mod_spec_m.so\n",
145           :owner   => 'root',
146           :group   => 'wheel',
147           :mode    => '0644',
148         } )
149       end
150     end
151   end
152 end