diff --git a/spec/classes/mod/proxy_connect_spec.rb b/spec/classes/mod/proxy_connect_spec.rb index 575f17d1..cb433f06 100644 --- a/spec/classes/mod/proxy_connect_spec.rb +++ b/spec/classes/mod/proxy_connect_spec.rb @@ -1,45 +1,41 @@ # frozen_string_literal: true require 'spec_helper' describe 'apache::mod::proxy_connect', type: :class do let :pre_condition do [ 'include apache::mod::proxy', ] end - it_behaves_like 'a mod class, without including apache' - context 'on a Debian OS' do - context 'with Apache version < 2.2' do - include_examples 'Debian 7' - let :params do - { - apache_version: '2.1', - } - end + include_examples 'a mod class, without including apache' - it { is_expected.not_to contain_apache__mod('proxy_connect') } + context 'with Apache version < 2.2' do + let :params do + { + apache_version: '2.1', + } end - context 'with Apache version = 2.2' do - include_examples 'Debian 7' - let :params do - { - apache_version: '2.2', - } - end - it { is_expected.to contain_apache__mod('proxy_connect') } + it { is_expected.not_to contain_apache__mod('proxy_connect') } + end + context 'with Apache version = 2.2' do + let :params do + { + apache_version: '2.2', + } end - context 'with Apache version >= 2.4' do - include_examples 'Debian 8' - let :params do - { - apache_version: '2.4', - } - end - it { is_expected.to contain_apache__mod('proxy_connect') } + it { is_expected.to contain_apache__mod('proxy_connect') } + end + context 'with Apache version >= 2.4' do + let :params do + { + apache_version: '2.4', + } end + + it { is_expected.to contain_apache__mod('proxy_connect') } end end diff --git a/spec/spec_helper_local.rb b/spec/spec_helper_local.rb index 7b559a80..fa79367c 100644 --- a/spec/spec_helper_local.rb +++ b/spec/spec_helper_local.rb @@ -1,224 +1,211 @@ # frozen_string_literal: true if ENV['COVERAGE'] == 'yes' require 'simplecov' require 'simplecov-console' require 'codecov' SimpleCov.formatters = [ SimpleCov::Formatter::HTMLFormatter, SimpleCov::Formatter::Console, SimpleCov::Formatter::Codecov, ] SimpleCov.start do track_files 'lib/**/*.rb' add_filter '/spec' # do not track vendored files add_filter '/vendor' add_filter '/.vendor' # do not track gitignored files # this adds about 4 seconds to the coverage check # this could definitely be optimized add_filter do |f| # system returns true if exit status is 0, which with git-check-ignore means file is ignored system("git check-ignore --quiet #{f.filename}") end end end shared_examples :compile, compile: true do it { is_expected.to compile.with_all_deps } end shared_context 'a mod class, without including apache' do let(:facts) { on_supported_os['debian-8-x86_64'] } end shared_context 'Debian 6' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'Debian', operatingsystem: 'Debian', operatingsystemrelease: '6', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end -shared_context 'Debian 7' do - let :facts do - { - id: 'root', - kernel: 'Linux', - osfamily: 'Debian', - operatingsystem: 'Debian', - operatingsystemrelease: '7.0.0', - path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', - } - end -end - shared_context 'Debian 8' do let(:facts) { on_supported_os['debian-8-x86_64'] } end shared_context 'Ubuntu 14.04' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'Debian', operatingsystem: 'Ubuntu', operatingsystemrelease: '14.04', lsbdistrelease: '14.04', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'RedHat 5' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'RedHat', operatingsystem: 'RedHat', operatingsystemrelease: '5', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'RedHat 6' do let(:facts) { on_supported_os['redhat-6-x86_64'] } end shared_context 'RedHat 7' do let(:facts) { on_supported_os['redhat-7-x86_64'] } end shared_context 'RedHat 8' do let(:facts) { on_supported_os['redhat-8-x86_64'] } end shared_context 'Fedora 17' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'RedHat', operatingsystem: 'Fedora', operatingsystemrelease: '17', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'Fedora 21' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'RedHat', operatingsystem: 'Fedora', operatingsystemrelease: '21', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'Fedora 28' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'RedHat', operatingsystem: 'Fedora', operatingsystemrelease: '28', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'Fedora Rawhide' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'RedHat', operatingsystem: 'Fedora', operatingsystemrelease: 'Rawhide', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'FreeBSD 9' do let :facts do { osfamily: 'FreeBSD', operatingsystemrelease: '9', operatingsystem: 'FreeBSD', id: 'root', kernel: 'FreeBSD', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'FreeBSD 10' do let :facts do { id: 'root', kernel: 'FreeBSD', osfamily: 'FreeBSD', operatingsystem: 'FreeBSD', operatingsystemrelease: '10', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'Gentoo' do let :facts do { id: 'root', kernel: 'Linux', osfamily: 'Gentoo', operatingsystem: 'Gentoo', operatingsystemrelease: '3.16.1-gentoo', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin', } end end shared_context 'Darwin' do let :facts do { osfamily: 'Darwin', operatingsystemrelease: '13.1.0', } end end shared_context 'Unsupported OS' do let :facts do { osfamily: 'Magic', operatingsystemrelease: '0', operatingsystem: 'Magic', id: 'root', kernel: 'Linux', path: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', } end end shared_context 'SLES 12' do let(:facts) { on_supported_os['sles-12-x86_64'] } end