view modules/apache/spec/defines/fastcgi_server_spec.rb @ 273:48b154d5ea53

Fix Mariadb setup by removing now removed config values They were necessary under CentOS 7, then deprecated, now the behaviour is the default and the option has been removed
author IBBoard <dev@ibboard.co.uk>
date Sat, 04 Jan 2020 11:34:30 +0000
parents 675c1cc61eaf
children d9352a684e62
line wrap: on
line source

require 'spec_helper'

describe 'apache::fastcgi::server', :type => :define do
  let :pre_condition do
    'include apache'
  end
  let :title do
    'www'
  end
  describe 'os-dependent items' do
    context "on RedHat based systems" do
      let :default_facts do
        {
          :osfamily               => 'RedHat',
          :operatingsystem        => 'CentOS',
          :operatingsystemrelease => '6',
          :kernel                 => 'Linux',
          :id                     => 'root',
          :concat_basedir         => '/dne',
          :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
          :is_pe                  => false,
        }
      end
      let :facts do default_facts end
      it { should contain_class("apache") }
      it { should contain_class("apache::mod::fastcgi") }
      it { should contain_file("fastcgi-pool-#{title}.conf").with(
        :ensure => 'present',
        :path => "/etc/httpd/conf.d/fastcgi-pool-#{title}.conf"
      ) }
    end
    context "on Debian based systems" do
      let :default_facts do
        {
          :osfamily               => 'Debian',
          :operatingsystem        => 'Debian',
          :operatingsystemrelease => '6',
          :lsbdistcodename        => 'squeeze',
          :kernel                 => 'Linux',
          :id                     => 'root',
          :concat_basedir         => '/dne',
          :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
          :is_pe                  => false,
        }
      end
      let :facts do default_facts end
      it { should contain_class("apache") }
      it { should contain_class("apache::mod::fastcgi") }
      it { should contain_file("fastcgi-pool-#{title}.conf").with(
        :ensure => 'present',
        :path   => "/etc/apache2/conf.d/fastcgi-pool-#{title}.conf"
      ) }
    end
    context "on FreeBSD systems" do
      let :default_facts do
        {
          :osfamily               => 'FreeBSD',
          :operatingsystem        => 'FreeBSD',
          :operatingsystemrelease => '9',
          :kernel                 => 'FreeBSD',
          :id                     => 'root',
          :concat_basedir         => '/dne',
          :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
          :is_pe                  => false,
        }
      end
      let :facts do default_facts end
      it { should contain_class("apache") }
      it { should contain_class("apache::mod::fastcgi") }
      it { should contain_file("fastcgi-pool-#{title}.conf").with(
        :ensure => 'present',
        :path   => "/usr/local/etc/apache24/Includes/fastcgi-pool-#{title}.conf"
      ) }
    end
    context "on Gentoo systems" do
      let :default_facts do
        {
          :osfamily               => 'Gentoo',
          :operatingsystem        => 'Gentoo',
          :operatingsystemrelease => '3.16.1-gentoo',
          :concat_basedir         => '/dne',
          :kernel                 => 'Linux',
          :id                     => 'root',
          :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin',
          :is_pe                  => false,
        }
      end
      let :facts do default_facts end
      it { should contain_class("apache") }
      it { should contain_class("apache::mod::fastcgi") }
      it { should contain_file("fastcgi-pool-#{title}.conf").with(
        :ensure => 'present',
        :path   => "/etc/apache2/conf.d/fastcgi-pool-#{title}.conf"
      ) }
    end
  end
  describe 'os-independent items' do
    let :facts do
      {
        :osfamily               => 'Debian',
        :operatingsystem        => 'Debian',
        :operatingsystemrelease => '6',
        :lsbdistcodename        => 'squeeze',
        :kernel                 => 'Linux',
        :id                     => 'root',
        :concat_basedir         => '/dne',
        :path                   => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
        :is_pe                  => false,
      }
    end
    describe ".conf content using TCP communication" do
      let :params do
        {
          :host       => '127.0.0.1:9001',
          :timeout    => 30,
          :flush      => true,
          :faux_path  => '/var/www/php-www.fcgi',
          :fcgi_alias => '/php-www.fcgi',
          :file_type  => 'application/x-httpd-php',
          :pass_header => 'Authorization'
        }
      end
      let :expected do
'FastCGIExternalServer /var/www/php-www.fcgi -idle-timeout 30 -flush -host 127.0.0.1:9001 -pass-header Authorization
Alias /php-www.fcgi /var/www/php-www.fcgi
Action application/x-httpd-php /php-www.fcgi
'
      end
      it do
        should contain_file("fastcgi-pool-www.conf").with_content(expected)
      end
    end
    describe ".conf content using socket communication" do
      let :params do
        {
          :host       => '/var/run/fcgi.sock',
          :timeout    => 30,
          :flush      => true,
          :faux_path  => '/var/www/php-www.fcgi',
          :fcgi_alias => '/php-www.fcgi',
          :file_type  => 'application/x-httpd-php'
        }
      end
      let :expected do
'FastCGIExternalServer /var/www/php-www.fcgi -idle-timeout 30 -flush -socket /var/run/fcgi.sock
Alias /php-www.fcgi /var/www/php-www.fcgi
Action application/x-httpd-php /php-www.fcgi
'
      end
      it do
        should contain_file("fastcgi-pool-www.conf").with_content(expected)
      end
    end

  end
end