From 42488b04b47ec3fd87f1d45ec3fa90b588545ca1 Mon Sep 17 00:00:00 2001 From: Ewoud Kohl van Wijngaarden Date: Tue, 2 Jul 2013 19:22:35 +0200 Subject: Add basic testing infrastructure --- spec/classes/munin_client_spec.rb | 14 +++++++++ spec/classes/munin_host_spec.rb | 14 +++++++++ spec/classes/munin_plugins_interfaces_spec.rb | 44 +++++++++++++++++++++++++++ spec/spec.opts | 1 + spec/spec_helper.rb | 9 ++++++ 5 files changed, 82 insertions(+) create mode 100644 spec/classes/munin_client_spec.rb create mode 100644 spec/classes/munin_host_spec.rb create mode 100644 spec/classes/munin_plugins_interfaces_spec.rb create mode 100644 spec/spec.opts create mode 100644 spec/spec_helper.rb (limited to 'spec') diff --git a/spec/classes/munin_client_spec.rb b/spec/classes/munin_client_spec.rb new file mode 100644 index 0000000..5438b20 --- /dev/null +++ b/spec/classes/munin_client_spec.rb @@ -0,0 +1,14 @@ +require 'spec_helper' + +describe 'munin::client' do + let :facts do + { + :operatingsystem => 'CentOS', + :interfaces => 'lo,eth0', + } + end + + it 'should compile' do + should include_class('munin::client') + end +end diff --git a/spec/classes/munin_host_spec.rb b/spec/classes/munin_host_spec.rb new file mode 100644 index 0000000..2216cc5 --- /dev/null +++ b/spec/classes/munin_host_spec.rb @@ -0,0 +1,14 @@ +require 'spec_helper' + +describe 'munin::host' do + let :facts do + { + :operatingsystem => 'CentOS', + :interfaces => 'lo,eth0', + } + end + + it 'should compile' do + should include_class('munin::host') + end +end diff --git a/spec/classes/munin_plugins_interfaces_spec.rb b/spec/classes/munin_plugins_interfaces_spec.rb new file mode 100644 index 0000000..95aa785 --- /dev/null +++ b/spec/classes/munin_plugins_interfaces_spec.rb @@ -0,0 +1,44 @@ +require 'spec_helper' + +describe 'munin::plugins::interfaces' do + context 'on CentOS' do + let :facts do + { + :operatingsystem => 'CentOS', + :interfaces => 'lo,eth0,sit0', + } + end + + it 'should compile' do + should include_class('munin::plugins::interfaces') + end + + it 'should create plugins for each interface' do + # lo + should contain_munin__plugin('if_lo').with_ensure('if_') + should contain_munin__plugin('if_err_lo').with_ensure('if_err_') + + # eth0 + should contain_munin__plugin('if_eth0').with_ensure('if_') + should contain_munin__plugin('if_err_eth0').with_ensure('if_err_') + end + + it 'should not create plugins for sit0' do + should_not contain_munin__plugin('if_sit0') + should_not contain_munin__plugin('if_err_sit0') + end + end + + context 'on OpenBSD' do + let :facts do + { + :operatingsystem => 'OpenBSD', + :interfaces => 'eth0', + } + end + + it 'should use if_errcoll_ instead of if_err_' do + should contain_munin__plugin('if_errcoll_eth0').with_ensure('if_errcoll_') + end + end +end diff --git a/spec/spec.opts b/spec/spec.opts new file mode 100644 index 0000000..d1bd681 --- /dev/null +++ b/spec/spec.opts @@ -0,0 +1 @@ +--format documentation --colour --backtrace diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 0000000..cffe80c --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1,9 @@ +require 'puppetlabs_spec_helper/module_spec_helper' + +fixture_path = File.expand_path(File.join(__FILE__, '..', 'fixtures')) + +RSpec.configure do |c| + c.module_path = File.join(fixture_path, 'modules') + c.manifest_dir = File.join(fixture_path, 'manifests') + c.mock_with :mocha +end -- cgit v1.2.3