Skip to content

Commit fb0d078

Browse files
committed
Run vhost tests on all supported OSes
This splits off the fastcgi tests to its own case with proper conditionals. This allows testing the entire define on all supported operating system versions. FastCGI is actually unavailable on all supported Debian versions, rather than just Ubuntu so those are skipped as well.
1 parent 614578a commit fb0d078

File tree

1 file changed

+20
-12
lines changed

1 file changed

+20
-12
lines changed

spec/defines/vhost_spec.rb

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,6 @@
55
describe 'apache::vhost', type: :define do
66
describe 'os-independent items' do
77
on_supported_os.each do |os, facts|
8-
# this setup uses fastcgi wich isn't available on RHEL 7 / RHEL 8 / Ubuntu 18.04
9-
next if facts[:os]['release']['major'] == '18.04' || facts[:os]['release']['major'] == '20.04'
10-
next if (facts[:os]['release']['major'] == '7' || facts[:os]['release']['major'] == '8') && facts[:os]['family']['RedHat']
11-
# next if facts[:os]['name'] == 'SLES'
12-
138
apache_name = case facts[:os]['family']
149
when 'RedHat'
1510
'httpd'
@@ -46,7 +41,7 @@
4641
it { is_expected.to contain_class('apache::params') }
4742
it { is_expected.to contain_apache__listen(params[:port]) }
4843
# namebased virualhost is only created on apache 2.2 and older
49-
if (facts[:os]['family'] == 'RedHat' && facts[:os]['release']['major'].to_i < 8) ||
44+
if (facts[:os]['family'] == 'RedHat' && facts[:os]['release']['major'].to_i < 7) ||
5045
(facts[:os]['name'] == 'Amazon') ||
5146
(facts[:os]['name'] == 'SLES' && facts[:os]['release']['major'].to_i < 12)
5247
it { is_expected.to contain_apache__namevirtualhost("*:#{params[:port]}") }
@@ -441,10 +436,6 @@
441436
},
442437
'wsgi_chunked_request' => 'On',
443438
'action' => 'foo',
444-
'fastcgi_server' => 'localhost',
445-
'fastcgi_socket' => '/tmp/fastcgi.socket',
446-
'fastcgi_dir' => '/tmp',
447-
'fastcgi_idle_timeout' => '120',
448439
'additional_includes' => '/custom/path/includes',
449440
'apache_version' => '2.4',
450441
'use_optional_includes' => true,
@@ -578,7 +569,6 @@
578569
}
579570
it { is_expected.to contain_class('apache::mod::alias') }
580571
it { is_expected.to contain_class('apache::mod::env') }
581-
it { is_expected.to contain_class('apache::mod::fastcgi') }
582572
it { is_expected.to contain_class('apache::mod::filter') }
583573
it { is_expected.to contain_class('apache::mod::headers') }
584574
it { is_expected.to contain_class('apache::mod::mime') }
@@ -788,7 +778,6 @@
788778
it { is_expected.to contain_concat__fragment('rspec.example.com-requestheader') }
789779
it { is_expected.to contain_concat__fragment('rspec.example.com-wsgi') }
790780
it { is_expected.to contain_concat__fragment('rspec.example.com-custom_fragment') }
791-
it { is_expected.to contain_concat__fragment('rspec.example.com-fastcgi') }
792781
it { is_expected.to contain_concat__fragment('rspec.example.com-suexec') }
793782
it { is_expected.to contain_concat__fragment('rspec.example.com-allow_encoded_slashes') }
794783
it { is_expected.to contain_concat__fragment('rspec.example.com-passenger') }
@@ -1772,6 +1761,25 @@
17721761
end
17731762
end
17741763

1764+
# this setup uses fastcgi wich isn't available on RHEL 7 / RHEL 8 / Debian / Ubuntu
1765+
unless facts[:os]['family'] || (facts[:os]['family'] == 'RedHat' && facts[:os]['release']['major'].to_i >= 7)
1766+
describe 'fastcgi options' do
1767+
let :params do
1768+
{
1769+
'docroot' => '/var/www/foo',
1770+
'fastcgi_server' => 'localhost',
1771+
'fastcgi_socket' => '/tmp/fastcgi.socket',
1772+
'fastcgi_dir' => '/tmp',
1773+
'fastcgi_idle_timeout' => '120',
1774+
}
1775+
end
1776+
1777+
it { is_expected.to compile }
1778+
it { is_expected.to contain_class('apache::mod::fastcgi') }
1779+
it { is_expected.to contain_concat__fragment('rspec.example.com-fastcgi') }
1780+
end
1781+
end
1782+
17751783
context 'require unmanaged' do
17761784
let :params do
17771785
{

0 commit comments

Comments
 (0)