summaryrefslogtreecommitdiff
path: root/spec/classes/munin_client_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/classes/munin_client_spec.rb')
-rw-r--r--spec/classes/munin_client_spec.rb50
1 files changed, 43 insertions, 7 deletions
diff --git a/spec/classes/munin_client_spec.rb b/spec/classes/munin_client_spec.rb
index 5438b20..9a92cef 100644
--- a/spec/classes/munin_client_spec.rb
+++ b/spec/classes/munin_client_spec.rb
@@ -1,14 +1,50 @@
require 'spec_helper'
describe 'munin::client' do
- let :facts do
- {
- :operatingsystem => 'CentOS',
- :interfaces => 'lo,eth0',
- }
+ shared_examples 'debian-client' do |os, codename|
+ let(:facts) {{
+ :operatingsystem => os,
+ :osfamily => 'Debian',
+ :lsbdistcodename => codename,
+ }}
+ it { should contain_package('munin-node') }
+ it { should contain_package('iproute') }
+ it { should contain_file('/etc/munin/munin-node.conf') }
+ it { should include_class('munin::client::debian') }
+ end
+
+ shared_examples 'redhat-client' do |os, codename|
+ let(:facts) {{
+ :operatingsystem => os,
+ :osfamily => 'RedHat',
+ :lsbdistcodename => codename,
+ }}
+ it { should contain_package('munin-node') }
+ it { should contain_file('/etc/munin/munin-node.conf') }
+ end
+
+ context 'on debian-like system' do
+ it_behaves_like 'debian-client', 'Debian', 'squeeze'
+ it_behaves_like 'debian-client', 'Debian', 'wheezy'
+ it_behaves_like 'debian-client', 'Ubuntu', 'precise'
end
- it 'should compile' do
- should include_class('munin::client')
+ context 'on redhat-like system' do
+ it_behaves_like 'redhat-client', 'CentOS', '6'
+ # not supported yet
+ # it_behaves_like 'redhat', 'RedHat', '6'
end
+
+ context 'gentoo' do
+ let(:facts) {{
+ :operatingsystem => 'Gentoo',
+ :osfamily => 'Gentoo',
+ :lsbdistcodename => '',
+ :interfaces => 'lo,eth0',
+ }}
+ it { should contain_package('munin-node') }
+ it { should contain_file('/etc/munin/munin-node.conf') }
+ it { should include_class('munin::client::gentoo') }
+ end
+
end