1313 end
1414
1515 context 'default class inclusion' do
16- let ( :pp ) do
17- <<-EOS
18- class { 'rabbitmq': }
19- if $facts['os']['family'] == 'RedHat' {
20- class { 'erlang': epel_enable => true}
21- Class['erlang'] -> Class['rabbitmq']
22- }
23- EOS
16+ it_behaves_like 'an idempotent resource' do
17+ let ( :manifest ) do
18+ <<-PUPPET
19+ class { 'rabbitmq': }
20+ PUPPET
21+ end
2422 end
2523
26- it_behaves_like 'an idempotent resource'
27-
2824 describe package ( package_name ) do
2925 it { is_expected . to be_installed }
3026 end
@@ -49,20 +45,20 @@ class { 'erlang': epel_enable => true}
4945 end
5046
5147 context 'disable and stop service' do
52- let ( :pp ) do
53- <<-EOS
54- class { 'rabbitmq':
55- service_ensure => 'stopped',
56- }
57- if $facts['os']['family'] == 'RedHat' {
58- class { 'erlang': epel_enable => true}
59- Class['erlang'] -> Class['rabbitmq']
60- }
61- EOS
48+ it_behaves_like 'an idempotent resource' do
49+ let ( :manifest ) do
50+ <<-PUPPET
51+ class { 'rabbitmq':
52+ service_ensure => 'stopped',
53+ }
54+ if $facts['os']['family'] == 'RedHat' {
55+ class { 'erlang': epel_enable => true}
56+ Class['erlang'] -> Class['rabbitmq']
57+ }
58+ PUPPET
59+ end
6260 end
6361
64- it_behaves_like 'an idempotent resource'
65-
6662 describe service ( service_name ) do
6763 it { is_expected . not_to be_enabled }
6864 it { is_expected . not_to be_running }
@@ -73,21 +69,13 @@ class { 'erlang': epel_enable => true}
7369 it 'runs successfully' do
7470 pp_pre = <<-EOS
7571 class { 'rabbitmq': }
76- if $facts['os']['family'] == 'RedHat' {
77- class { 'erlang': epel_enable => true}
78- Class['erlang'] -> Class['rabbitmq']
79- }
8072 EOS
8173
8274 pp = <<-EOS
8375 class { 'rabbitmq':
8476 service_manage => false,
8577 service_ensure => 'stopped',
8678 }
87- if $facts['os']['family'] == 'RedHat' {
88- class { 'erlang': epel_enable => true}
89- Class['erlang'] -> Class['rabbitmq']
90- }
9179 EOS
9280
9381 apply_manifest ( pp_pre , catch_failures : true )
@@ -101,19 +89,19 @@ class { 'erlang': epel_enable => true}
10189 end
10290
10391 context 'binding on all interfaces' do
104- let ( :pp ) do
105- <<-EOS
106- class { 'rabbitmq':
107- service_manage => true,
108- port => 5672,
109- admin_enable => true,
110- node_ip_address => '0.0.0.0'
111- }
112- EOS
92+ it_behaves_like 'an idempotent resource' do
93+ let ( :manifest ) do
94+ <<-PUPPET
95+ class { 'rabbitmq':
96+ service_manage => true,
97+ port => 5672,
98+ admin_enable => true,
99+ node_ip_address => '0.0.0.0'
100+ }
101+ PUPPET
102+ end
113103 end
114104
115- it_behaves_like 'an idempotent resource'
116-
117105 describe service ( service_name ) do
118106 it { is_expected . to be_running }
119107 end
@@ -134,19 +122,19 @@ class { 'rabbitmq':
134122 end
135123
136124 context 'binding to localhost only' do
137- let ( :pp ) do
138- <<-EOS
139- class { 'rabbitmq':
140- service_manage => true,
141- port => 5672,
142- admin_enable => true,
143- node_ip_address => '127.0.0.1'
144- }
145- EOS
125+ it_behaves_like 'an idempotent resource' do
126+ let ( :manifest ) do
127+ <<-PUPPET
128+ class { 'rabbitmq':
129+ service_manage => true,
130+ port => 5672,
131+ admin_enable => true,
132+ node_ip_address => '127.0.0.1'
133+ }
134+ PUPPET
135+ end
146136 end
147137
148- it_behaves_like 'an idempotent resource'
149-
150138 describe service ( service_name ) do
151139 it { is_expected . to be_running }
152140 end
@@ -169,23 +157,23 @@ class { 'rabbitmq':
169157 end
170158
171159 context 'ssl enabled' do
172- let ( :pp ) do
173- <<-EOS
174- class { 'rabbitmq':
175- service_manage => true,
176- admin_enable => true,
177- node_ip_address => '0.0.0.0',
178- ssl_interface => '0.0.0.0',
179- ssl => true,
180- ssl_cacert => '/tmp/cacert.crt',
181- ssl_cert => '/tmp/rabbitmq.crt',
182- ssl_key => '/tmp/rabbitmq.key',
183- }
184- EOS
160+ it_behaves_like 'an idempotent resource' do
161+ let ( :manifest ) do
162+ <<-PUPPET
163+ class { 'rabbitmq':
164+ service_manage => true,
165+ admin_enable => true,
166+ node_ip_address => '0.0.0.0',
167+ ssl_interface => '0.0.0.0',
168+ ssl => true,
169+ ssl_cacert => '/tmp/cacert.crt',
170+ ssl_cert => '/tmp/rabbitmq.crt',
171+ ssl_key => '/tmp/rabbitmq.key',
172+ }
173+ PUPPET
174+ end
185175 end
186176
187- it_behaves_like 'an idempotent resource'
188-
189177 describe service ( service_name ) do
190178 it { is_expected . to be_running }
191179 end
@@ -200,20 +188,20 @@ class { 'rabbitmq':
200188 end
201189
202190 context 'different management_ip_address and node_ip_address' do
203- let ( :pp ) do
204- <<-EOS
191+ it_behaves_like 'an idempotent resource' do
192+ let ( :manifest ) do
193+ <<-PUPPET
205194 class { 'rabbitmq':
206195 service_manage => true,
207196 port => 5672,
208197 admin_enable => true,
209198 node_ip_address => '0.0.0.0',
210199 management_ip_address => '127.0.0.1'
211200 }
212- EOS
201+ PUPPET
202+ end
213203 end
214204
215- it_behaves_like 'an idempotent resource'
216-
217205 describe service ( service_name ) do
218206 it { is_expected . to be_running }
219207 end
0 commit comments