]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/apache/spec/classes/mod/rpaf_spec.rb
add Openstack modules to 3rdparty
[dsa-puppet.git] / 3rdparty / modules / apache / spec / classes / mod / rpaf_spec.rb
1 require 'spec_helper'
2
3 describe 'apache::mod::rpaf', :type => :class do
4   let :pre_condition do
5     [
6       'include apache',
7     ]
8   end
9   context "on a Debian OS" do
10     let :facts do
11       {
12         :osfamily               => 'Debian',
13         :operatingsystemrelease => '6',
14         :concat_basedir         => '/dne',
15         :lsbdistcodename        => 'squeeze',
16         :operatingsystem        => 'Debian',
17         :id                     => 'root',
18         :kernel                 => 'Linux',
19         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
20         :is_pe                  => false,
21       }
22     end
23     it { is_expected.to contain_class("apache::params") }
24     it { is_expected.to contain_apache__mod('rpaf') }
25     it { is_expected.to contain_package("libapache2-mod-rpaf") }
26     it { is_expected.to contain_file('rpaf.conf').with({
27       'path' => '/etc/apache2/mods-available/rpaf.conf',
28     }) }
29     it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFenable On$/) }
30
31     describe "with sethostname => true" do
32       let :params do
33         { :sethostname => 'true' }
34       end
35       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFsethostname On$/) }
36     end
37     describe "with proxy_ips => [ 10.42.17.8, 10.42.18.99 ]" do
38       let :params do
39         { :proxy_ips => [ '10.42.17.8', '10.42.18.99' ] }
40       end
41       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFproxy_ips 10.42.17.8 10.42.18.99$/) }
42     end
43     describe "with header => X-Real-IP" do
44       let :params do
45         { :header => 'X-Real-IP' }
46       end
47       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFheader X-Real-IP$/) }
48     end
49   end
50   context "on a FreeBSD OS" do
51     let :facts do
52       {
53         :osfamily               => 'FreeBSD',
54         :operatingsystemrelease => '9',
55         :concat_basedir         => '/dne',
56         :operatingsystem        => 'FreeBSD',
57         :id                     => 'root',
58         :kernel                 => 'FreeBSD',
59         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
60         :is_pe                  => false,
61       }
62     end
63     it { is_expected.to contain_class("apache::params") }
64     it { is_expected.to contain_apache__mod('rpaf') }
65     it { is_expected.to contain_package("www/mod_rpaf2") }
66     it { is_expected.to contain_file('rpaf.conf').with({
67       'path' => '/usr/local/etc/apache24/Modules/rpaf.conf',
68     }) }
69     it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFenable On$/) }
70
71     describe "with sethostname => true" do
72       let :params do
73         { :sethostname => 'true' }
74       end
75       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFsethostname On$/) }
76     end
77     describe "with proxy_ips => [ 10.42.17.8, 10.42.18.99 ]" do
78       let :params do
79         { :proxy_ips => [ '10.42.17.8', '10.42.18.99' ] }
80       end
81       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFproxy_ips 10.42.17.8 10.42.18.99$/) }
82     end
83     describe "with header => X-Real-IP" do
84       let :params do
85         { :header => 'X-Real-IP' }
86       end
87       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFheader X-Real-IP$/) }
88     end
89   end
90   context "on a Gentoo OS" do
91     let :facts do
92       {
93         :osfamily               => 'Gentoo',
94         :operatingsystem        => 'Gentoo',
95         :operatingsystemrelease => '3.16.1-gentoo',
96         :concat_basedir         => '/dne',
97         :id                     => 'root',
98         :kernel                 => 'Linux',
99         :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin',
100         :is_pe                  => false,
101       }
102     end
103     it { is_expected.to contain_class("apache::params") }
104     it { is_expected.to contain_apache__mod('rpaf') }
105     it { is_expected.to contain_package("www-apache/mod_rpaf") }
106     it { is_expected.to contain_file('rpaf.conf').with({
107       'path' => '/etc/apache2/modules.d/rpaf.conf',
108     }) }
109     it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFenable On$/) }
110
111     describe "with sethostname => true" do
112       let :params do
113         { :sethostname => 'true' }
114       end
115       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFsethostname On$/) }
116     end
117     describe "with proxy_ips => [ 10.42.17.8, 10.42.18.99 ]" do
118       let :params do
119         { :proxy_ips => [ '10.42.17.8', '10.42.18.99' ] }
120       end
121       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFproxy_ips 10.42.17.8 10.42.18.99$/) }
122     end
123     describe "with header => X-Real-IP" do
124       let :params do
125         { :header => 'X-Real-IP' }
126       end
127       it { is_expected.to contain_file('rpaf.conf').with_content(/^RPAFheader X-Real-IP$/) }
128     end
129   end
130 end