From: Mathieu Gagné Date: Fri, 5 Apr 2013 00:19:10 +0000 (-0400) Subject: Add rspec tests for ceilometer::collector X-Git-Tag: grizzly-eol~15^2~9^2~11 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=d167ce22274db0396b00f5c1ded6e50efa7766cd;p=puppet-modules%2Fpuppet-ceilometer.git Add rspec tests for ceilometer::collector --- diff --git a/manifests/collector.pp b/manifests/collector.pp index bd9228b..60193d4 100644 --- a/manifests/collector.pp +++ b/manifests/collector.pp @@ -8,7 +8,8 @@ class ceilometer::collector ( Package<| title == 'ceilometer-common' |> -> Class['ceilometer::collector'] package { 'ceilometer-collector': - ensure => installed + ensure => installed, + name => $::ceilometer::params::collector_package_name, } if $enabled { diff --git a/spec/classes/ceilometer_collector_spec.rb b/spec/classes/ceilometer_collector_spec.rb new file mode 100644 index 0000000..f6c9125 --- /dev/null +++ b/spec/classes/ceilometer_collector_spec.rb @@ -0,0 +1,54 @@ +require 'spec_helper' + +describe 'ceilometer::collector' do + + shared_examples_for 'ceilometer-collector' do + + it { should include_class('ceilometer::params') } + + it 'installs ceilometer-collector package' do + should contain_package('ceilometer-collector').with( + :ensure => 'installed', + :name => platform_params[:collector_package_name] + ) + end + + it 'configures ceilometer-collector service' do + should contain_service('ceilometer-collector').with( + :ensure => 'running', + :name => platform_params[:collector_service_name], + :enable => true, + :hasstatus => true, + :hasrestart => true, + :require => ['Package[ceilometer-collector]', 'Class[Ceilometer::Db]'], + :subscribe => 'Exec[ceilometer-dbsync]' + ) + end + end + + context 'on Debian platforms' do + let :facts do + { :osfamily => 'Debian' } + end + + let :platform_params do + { :collector_package_name => 'ceilometer-collector', + :collector_service_name => 'ceilometer-collector' } + end + + it_configures 'ceilometer-collector' + end + + context 'on RedHat platforms' do + let :facts do + { :osfamily => 'RedHat' } + end + + let :platform_params do + { :collector_package_name => 'openstack-ceilometer-collector', + :collector_service_name => 'openstack-ceilometer-collector' } + end + + it_configures 'ceilometer-collector' + end +end