diff options
author | Yasser Nabi <yassersaleemi@gmail.com> | 2014-07-11 18:02:21 +0100 |
---|---|---|
committer | Yasser Nabi <yassersaleemi@gmail.com> | 2014-07-11 18:02:21 +0100 |
commit | eb7c36ae207abbff4a5121dfff8456e3609df45f (patch) | |
tree | ff711a2dbb45b8d7d8975778b11cf06d7544554b /spec/classes/rsyslog_database_spec.rb | |
parent | 473da25b6cb2900d91e4ac782c5538bf9bd3ec1b (diff) |
Update spec tests to support rsyslog_version fact
With commit 9fcacf58, the module uses the rsyslog_version fact in
templates. This commit updates the spec files to run cleanly with this
fact.
Diffstat (limited to 'spec/classes/rsyslog_database_spec.rb')
-rw-r--r-- | spec/classes/rsyslog_database_spec.rb | 351 |
1 files changed, 256 insertions, 95 deletions
diff --git a/spec/classes/rsyslog_database_spec.rb b/spec/classes/rsyslog_database_spec.rb index 83bb09a..0421135 100644 --- a/spec/classes/rsyslog_database_spec.rb +++ b/spec/classes/rsyslog_database_spec.rb @@ -1,146 +1,307 @@ require 'spec_helper' describe 'rsyslog::database', :type => :class do - context "osfamily = RedHat" do - let :facts do + + context "Rsyslog version >= 8" do + let(:default_facts) do { - :osfamily => 'RedHat', - :operatingsystem => 'RedHat', - :operatingsystemmajrelease => 6, + :rsyslog_version => '8.1.2' } end - context "default usage mysql (osfamily = RedHat)" do - let(:title) { 'rsyslog-database-mysql' } + context "osfamily = RedHat" do + let :facts do + default_facts.merge!({ + :osfamily => 'RedHat', + :operatingsystem => 'RedHat', + :operatingsystemmajrelease => 6, + }) + end + + context "default usage mysql (osfamily = RedHat)" do + let(:title) { 'rsyslog-database-mysql' } - let (:params) { - { - 'backend' => 'mysql', - 'server' => 'localhost', - 'database' => 'rsyslog', - 'username' => 'us3rname', - 'password' => 'passw0rd', + let (:params) { + { + 'backend' => 'mysql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } } - } - it 'should compile' do - should contain_package('rsyslog-mysql') - should contain_file('/etc/rsyslog.d/mysql.conf') + it 'should compile' do + should contain_package('rsyslog-mysql') + should contain_file('/etc/rsyslog.d/mysql.conf') + end + end + + context "default usage pgsql (osfamily = RedHat)" do + let(:title) { 'rsyslog-database-pgsql' } + + let (:params) { + { + 'backend' => 'pgsql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } + } + + it 'should compile' do + should contain_package('rsyslog-pgsql') + should contain_file('/etc/rsyslog.d/pgsql.conf') + end end end - context "default usage pgsql (osfamily = RedHat)" do - let(:title) { 'rsyslog-database-pgsql' } - let (:params) { - { - 'backend' => 'pgsql', - 'server' => 'localhost', - 'database' => 'rsyslog', - 'username' => 'us3rname', - 'password' => 'passw0rd', + + context "osfamily = Debian" do + let :facts do + default_facts.merge!({ + :osfamily => 'Debian', + }) + end + + context "default usage mysql (osfamily = Debian)" do + let(:title) { 'rsyslog-database-mysql' } + + let (:params) { + { + 'backend' => 'mysql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } + } + + it 'should compile' do + should contain_package('rsyslog-mysql') + should contain_file('/etc/rsyslog.d/mysql.conf') + end + end + + context "default usage pgsql (osfamily = Debian)" do + let(:title) { 'rsyslog-database-pgsql' } + + let (:params) { + { + 'backend' => 'pgsql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } } - } - it 'should compile' do - should contain_package('rsyslog-pgsql') - should contain_file('/etc/rsyslog.d/pgsql.conf') + it 'should compile' do + should contain_package('rsyslog-pgsql') + should contain_file('/etc/rsyslog.d/pgsql.conf') + end end end - end - context "osfamily = Debian" do - let :facts do + context "osfamily = FreeBSD" do + let :facts do + default_facts.merge!({ + :osfamily => 'freebsd', + }) + end + + context "default usage mysql (osfamily = FreeBSD)" do + let(:title) { 'rsyslog-database-mysql' } + + let (:params) { + { + 'backend' => 'mysql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } + } + + it 'should compile' do + should contain_package('sysutils/rsyslog5-mysql') + should contain_file('/etc/syslog.d/mysql.conf') + end + end + + context "default usage pgsql (osfamily = FreeBSD)" do + let(:title) { 'rsyslog-database-pgsql' } + + let (:params) { + { + 'backend' => 'pgsql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } + } + + it 'should compile' do + should contain_package('sysutils/rsyslog5-pgsql') + should contain_file('/etc/syslog.d/pgsql.conf') + end + end + end + end + + context "Rsyslog version =< 8" do + let(:default_facts) do { - :osfamily => 'Debian', + :rsyslog_version => '7.1.2' } end - context "default usage mysql (osfamily = Debian)" do - let(:title) { 'rsyslog-database-mysql' } + context "osfamily = RedHat" do + let :facts do + default_facts.merge!({ + :osfamily => 'RedHat', + :operatingsystem => 'RedHat', + :operatingsystemmajrelease => 6, + }) + end + + context "default usage mysql (osfamily = RedHat)" do + let(:title) { 'rsyslog-database-mysql' } - let (:params) { - { - 'backend' => 'mysql', - 'server' => 'localhost', - 'database' => 'rsyslog', - 'username' => 'us3rname', - 'password' => 'passw0rd', + let (:params) { + { + 'backend' => 'mysql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } } - } - it 'should compile' do - should contain_package('rsyslog-mysql') - should contain_file('/etc/rsyslog.d/mysql.conf') + it 'should compile' do + should contain_package('rsyslog-mysql') + should contain_file('/etc/rsyslog.d/mysql.conf') + end end - end - context "default usage pgsql (osfamily = Debian)" do - let(:title) { 'rsyslog-database-pgsql' } + context "default usage pgsql (osfamily = RedHat)" do + let(:title) { 'rsyslog-database-pgsql' } - let (:params) { - { - 'backend' => 'pgsql', - 'server' => 'localhost', - 'database' => 'rsyslog', - 'username' => 'us3rname', - 'password' => 'passw0rd', + let (:params) { + { + 'backend' => 'pgsql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } } - } - it 'should compile' do - should contain_package('rsyslog-pgsql') - should contain_file('/etc/rsyslog.d/pgsql.conf') + it 'should compile' do + should contain_package('rsyslog-pgsql') + should contain_file('/etc/rsyslog.d/pgsql.conf') + end end end - end - context "osfamily = FreeBSD" do - let :facts do - { - :osfamily => 'freebsd', - } - end + context "osfamily = Debian" do + let :facts do + default_facts.merge!({ + :osfamily => 'Debian', + }) + end - context "default usage mysql (osfamily = FreeBSD)" do - let(:title) { 'rsyslog-database-mysql' } + context "default usage mysql (osfamily = Debian)" do + let(:title) { 'rsyslog-database-mysql' } - let (:params) { - { - 'backend' => 'mysql', - 'server' => 'localhost', - 'database' => 'rsyslog', - 'username' => 'us3rname', - 'password' => 'passw0rd', + let (:params) { + { + 'backend' => 'mysql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } } - } - it 'should compile' do - should contain_package('sysutils/rsyslog5-mysql') - should contain_file('/etc/syslog.d/mysql.conf') + it 'should compile' do + should contain_package('rsyslog-mysql') + should contain_file('/etc/rsyslog.d/mysql.conf') + end + end + + context "default usage pgsql (osfamily = Debian)" do + let(:title) { 'rsyslog-database-pgsql' } + + let (:params) { + { + 'backend' => 'pgsql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } + } + + it 'should compile' do + should contain_package('rsyslog-pgsql') + should contain_file('/etc/rsyslog.d/pgsql.conf') + end end end - context "default usage pgsql (osfamily = FreeBSD)" do - let(:title) { 'rsyslog-database-pgsql' } - let (:params) { - { - 'backend' => 'pgsql', - 'server' => 'localhost', - 'database' => 'rsyslog', - 'username' => 'us3rname', - 'password' => 'passw0rd', + + context "osfamily = FreeBSD" do + let :facts do + default_facts.merge!({ + :osfamily => 'freebsd', + }) + end + + context "default usage mysql (osfamily = FreeBSD)" do + let(:title) { 'rsyslog-database-mysql' } + + let (:params) { + { + 'backend' => 'mysql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } + } + + it 'should compile' do + should contain_package('sysutils/rsyslog5-mysql') + should contain_file('/etc/syslog.d/mysql.conf') + end + end + + context "default usage pgsql (osfamily = FreeBSD)" do + let(:title) { 'rsyslog-database-pgsql' } + + let (:params) { + { + 'backend' => 'pgsql', + 'server' => 'localhost', + 'database' => 'rsyslog', + 'username' => 'us3rname', + 'password' => 'passw0rd', + } } - } - it 'should compile' do - should contain_package('sysutils/rsyslog5-pgsql') - should contain_file('/etc/syslog.d/pgsql.conf') + it 'should compile' do + should contain_package('sysutils/rsyslog5-pgsql') + should contain_file('/etc/syslog.d/pgsql.conf') + end end end end |