X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fkeystone%2Fspec%2Fclasses%2Fkeystone_wsgi_apache_spec.rb;h=19423954577a097f6192eabacd383a94e7b05414;hb=71a236efd9f45828d875a0a5fd025108bb1dcada;hp=f2a22d619a5572c983e890a2e1e52c35670ad16f;hpb=4631045ebb77ee8622f6fa09277a50c372bcc02e;p=dsa-puppet.git diff --git a/3rdparty/modules/keystone/spec/classes/keystone_wsgi_apache_spec.rb b/3rdparty/modules/keystone/spec/classes/keystone_wsgi_apache_spec.rb index f2a22d61..19423954 100644 --- a/3rdparty/modules/keystone/spec/classes/keystone_wsgi_apache_spec.rb +++ b/3rdparty/modules/keystone/spec/classes/keystone_wsgi_apache_spec.rb @@ -17,22 +17,22 @@ describe 'keystone::wsgi::apache' do end shared_examples_for 'apache serving keystone with mod_wsgi' do - it { should contain_service('httpd').with_name(platform_parameters[:httpd_service_name]) } - it { should contain_class('keystone::params') } - it { should contain_class('apache') } - it { should contain_class('apache::mod::wsgi') } - it { should contain_class('keystone::db::sync') } + it { is_expected.to contain_service('httpd').with_name(platform_parameters[:httpd_service_name]) } + it { is_expected.to contain_class('keystone::params') } + it { is_expected.to contain_class('apache') } + it { is_expected.to contain_class('apache::mod::wsgi') } + it { is_expected.to contain_class('keystone::db::sync') } describe 'with default parameters' do - it { should contain_file("#{platform_parameters[:wsgi_script_path]}").with( + it { is_expected.to contain_file("#{platform_parameters[:wsgi_script_path]}").with( 'ensure' => 'directory', 'owner' => 'keystone', 'group' => 'keystone', 'require' => 'Package[httpd]' )} - it { should contain_file('keystone_wsgi_admin').with( + it { is_expected.to contain_file('keystone_wsgi_admin').with( 'ensure' => 'file', 'path' => "#{platform_parameters[:wsgi_script_path]}/admin", 'source' => platform_parameters[:wsgi_script_source], @@ -42,7 +42,7 @@ describe 'keystone::wsgi::apache' do 'require' => ["File[#{platform_parameters[:wsgi_script_path]}]", "Package[keystone]"] )} - it { should contain_file('keystone_wsgi_main').with( + it { is_expected.to contain_file('keystone_wsgi_main').with( 'ensure' => 'file', 'path' => "#{platform_parameters[:wsgi_script_path]}/main", 'source' => platform_parameters[:wsgi_script_source], @@ -52,7 +52,7 @@ describe 'keystone::wsgi::apache' do 'require' => ["File[#{platform_parameters[:wsgi_script_path]}]", "Package[keystone]"] )} - it { should contain_apache__vhost('keystone_wsgi_admin').with( + it { is_expected.to contain_apache__vhost('keystone_wsgi_admin').with( 'servername' => 'some.host.tld', 'ip' => nil, 'port' => '35357', @@ -73,7 +73,7 @@ describe 'keystone::wsgi::apache' do 'require' => 'File[keystone_wsgi_admin]' )} - it { should contain_apache__vhost('keystone_wsgi_main').with( + it { is_expected.to contain_apache__vhost('keystone_wsgi_main').with( 'servername' => 'some.host.tld', 'ip' => nil, 'port' => '5000', @@ -93,7 +93,7 @@ describe 'keystone::wsgi::apache' do 'wsgi_script_aliases' => { '/' => "#{platform_parameters[:wsgi_script_path]}/main" }, 'require' => 'File[keystone_wsgi_main]' )} - it { should contain_file("#{platform_parameters[:httpd_ports_file]}") } + it { is_expected.to contain_file("#{platform_parameters[:httpd_ports_file]}") } end describe 'when overriding parameters using different ports' do @@ -108,7 +108,7 @@ describe 'keystone::wsgi::apache' do } end - it { should contain_apache__vhost('keystone_wsgi_admin').with( + it { is_expected.to contain_apache__vhost('keystone_wsgi_admin').with( 'servername' => 'dummy.host', 'ip' => '10.42.51.1', 'port' => '4142', @@ -129,7 +129,7 @@ describe 'keystone::wsgi::apache' do 'require' => 'File[keystone_wsgi_admin]' )} - it { should contain_apache__vhost('keystone_wsgi_main').with( + it { is_expected.to contain_apache__vhost('keystone_wsgi_main').with( 'servername' => 'dummy.host', 'ip' => '10.42.51.1', 'port' => '12345', @@ -150,7 +150,7 @@ describe 'keystone::wsgi::apache' do 'require' => 'File[keystone_wsgi_main]' )} - it { should contain_file("#{platform_parameters[:httpd_ports_file]}") } + it { is_expected.to contain_file("#{platform_parameters[:httpd_ports_file]}") } end describe 'when overriding parameters using same port' do @@ -166,9 +166,9 @@ describe 'keystone::wsgi::apache' do } end - it { should_not contain_apache__vhost('keystone_wsgi_admin') } + it { is_expected.to_not contain_apache__vhost('keystone_wsgi_admin') } - it { should contain_apache__vhost('keystone_wsgi_main').with( + it { is_expected.to contain_apache__vhost('keystone_wsgi_main').with( 'servername' => 'dummy.host', 'ip' => nil, 'port' => '4242', @@ -208,6 +208,35 @@ describe 'keystone::wsgi::apache' do it_raises 'a Puppet::Error', /When using the same port for public & private endpoints, public_path and admin_path should be different\./ end + + describe 'when overriding parameters using symlink and custom file source' do + let :params do + { + :wsgi_script_ensure => 'link', + :wsgi_script_source => '/opt/keystone/httpd/keystone.py', + } + end + + it { is_expected.to contain_file('keystone_wsgi_admin').with( + 'ensure' => 'link', + 'path' => "#{platform_parameters[:wsgi_script_path]}/admin", + 'target' => '/opt/keystone/httpd/keystone.py', + 'owner' => 'keystone', + 'group' => 'keystone', + 'mode' => '0644', + 'require' => ["File[#{platform_parameters[:wsgi_script_path]}]", "Package[keystone]"] + )} + + it { is_expected.to contain_file('keystone_wsgi_main').with( + 'ensure' => 'link', + 'path' => "#{platform_parameters[:wsgi_script_path]}/main", + 'target' => '/opt/keystone/httpd/keystone.py', + 'owner' => 'keystone', + 'group' => 'keystone', + 'mode' => '0644', + 'require' => ["File[#{platform_parameters[:wsgi_script_path]}]", "Package[keystone]"] + )} + end end context 'on RedHat platforms' do