Mercurial > repos > other > Puppet
view modules/apache/spec/classes/service_spec.rb @ 257:675c1cc61eaf
Update Apache module to get CentOS 8 support
Unfortunately it only fixes some bits. mod_wsgi still needs
other approaches
This also overrides the vhost modification to make them come last
in the import order (after module loading)
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sun, 22 Dec 2019 14:43:29 -0500 |
parents | 37675581a273 |
children | d9352a684e62 |
line wrap: on
line source
require 'spec_helper' describe 'apache::service', :type => :class do let :pre_condition do 'include apache::params' end context "on a Debian OS" do let :facts do { :osfamily => 'Debian', :operatingsystemrelease => '6', :concat_basedir => '/dne', :lsbdistcodename => 'squeeze', :operatingsystem => 'Debian', :id => 'root', :kernel => 'Linux', :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', :is_pe => false, } end it { is_expected.to contain_service("httpd").with( 'name' => 'apache2', 'ensure' => 'running', 'enable' => 'true' ) } context "with $service_name => 'foo'" do let (:params) {{ :service_name => 'foo' }} it { is_expected.to contain_service("httpd").with( 'name' => 'foo' ) } end context "with $service_enable => true" do let (:params) {{ :service_enable => true }} it { is_expected.to contain_service("httpd").with( 'name' => 'apache2', 'ensure' => 'running', 'enable' => 'true' ) } end context "with $service_enable => false" do let (:params) {{ :service_enable => false }} it { is_expected.to contain_service("httpd").with( 'name' => 'apache2', 'ensure' => 'running', 'enable' => 'false' ) } end context "$service_enable must be a bool" do let (:params) {{ :service_enable => 'not-a-boolean' }} it 'should fail' do expect { catalogue }.to raise_error(Puppet::Error, /is not a boolean/) end end context "$service_manage must be a bool" do let (:params) {{ :service_manage => 'not-a-boolean' }} it 'should fail' do expect { catalogue }.to raise_error(Puppet::Error, /is not a boolean/) end end context "with $service_ensure => 'running'" do let (:params) {{ :service_ensure => 'running', }} it { is_expected.to contain_service("httpd").with( 'ensure' => 'running', 'enable' => 'true' ) } end context "with $service_ensure => 'stopped'" do let (:params) {{ :service_ensure => 'stopped', }} it { is_expected.to contain_service("httpd").with( 'ensure' => 'stopped', 'enable' => 'true' ) } end context "with $service_ensure => 'UNDEF'" do let (:params) {{ :service_ensure => 'UNDEF' }} it { is_expected.to contain_service("httpd").without_ensure } end context "with $service_restart unset" do it { is_expected.to contain_service("httpd").without_restart } end context "with $service_restart => '/usr/sbin/apachectl graceful'" do let (:params) {{ :service_restart => '/usr/sbin/apachectl graceful' }} it { is_expected.to contain_service("httpd").with( 'restart' => '/usr/sbin/apachectl graceful' ) } end end context "on a RedHat 5 OS, do not manage service" do let :facts do { :osfamily => 'RedHat', :operatingsystemrelease => '5', :concat_basedir => '/dne', :operatingsystem => 'RedHat', :id => 'root', :kernel => 'Linux', :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', :is_pe => false, } end let(:params) do { 'service_ensure' => 'running', 'service_name' => 'httpd', 'service_manage' => false } end it { is_expected.not_to contain_service('httpd') } end context "on a FreeBSD 5 OS" do let :facts do { :osfamily => 'FreeBSD', :operatingsystemrelease => '9', :concat_basedir => '/dne', :operatingsystem => 'FreeBSD', :id => 'root', :kernel => 'FreeBSD', :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', :is_pe => false, } end it { is_expected.to contain_service("httpd").with( 'name' => 'apache24', 'ensure' => 'running', 'enable' => 'true' ) } end context "on a Gentoo OS" do let :facts do { :osfamily => 'Gentoo', :operatingsystem => 'Gentoo', :operatingsystemrelease => '3.16.1-gentoo', :concat_basedir => '/dne', :id => 'root', :kernel => 'Linux', :path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin', :is_pe => false, } end it { is_expected.to contain_service("httpd").with( 'name' => 'apache2', 'ensure' => 'running', 'enable' => 'true' ) } end end