puppet-octavia/spec/classes/octavia_db_postgresql_spec.rb
Takashi Kajinami 0f938a8fcb Revert "CentOS 9: Disable unit tests dependent on puppet-postgresql"
This reverts commit 09c45520d8.

Reason for revert:
puppet-postgresql 8.1.0 was released and now the module supports RHEL 9
(and CentOS 9 effectively).

Note:
This change adds the service_provider fact in test fact data because
it is required by puppet-postgresql.

Depends-on: https://review.opendev.org/850705
Change-Id: Ia3124650c2080e5070005b5895b31436ea72dd9a
2022-07-24 00:52:54 +09:00

72 lines
1.9 KiB
Ruby

require 'spec_helper'
describe 'octavia::db::postgresql' do
shared_examples_for 'octavia::db::postgresql' do
let :req_params do
{ :password => 'octaviapass' }
end
let :pre_condition do
'include postgresql::server'
end
context 'with only required parameters' do
let :params do
req_params
end
it { is_expected.to contain_class('octavia::deps') }
it { is_expected.to contain_openstacklib__db__postgresql('octavia').with(
:user => 'octavia',
:password => 'octaviapass',
:dbname => 'octavia',
:encoding => nil,
:privileges => 'ALL',
)}
it { is_expected.to_not contain_openstacklib__db__postgresql('octavia_persistence') }
end
context 'with persistence database enabled' do
let :params do
req_params.merge!(:persistence_dbname => 'octavia_persistence')
end
it { is_expected.to contain_class('octavia::deps') }
it { is_expected.to contain_openstacklib__db__postgresql('octavia').with(
:user => 'octavia',
:password => 'octaviapass',
:dbname => 'octavia',
:encoding => nil,
:privileges => 'ALL',
)}
it { is_expected.to contain_openstacklib__db__postgresql('octavia_persistence').with(
:user => 'octavia',
:password => 'octaviapass',
:dbname => 'octavia_persistence',
:encoding => nil,
:privileges => 'ALL',
)}
end
end
on_supported_os({
:supported_os => OSDefaults.get_supported_os
}).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge(OSDefaults.get_facts({
# puppet-postgresql requires the service_provider fact provided by
# puppetlabs-postgresql.
:service_provider => 'systemd'
}))
end
it_configures 'octavia::db::postgresql'
end
end
end