Add unit test for client.pp

1) Add unit test for magnum::client class.
2) Fix package_ensure default value, the present should
   be enclosed in single quotation marks in order to
   indicate that it is string.

Change-Id: I553491782e6c734ef8c6c15d1ba7fc4d5617e3a3
This commit is contained in:
ZhongShengping 2017-01-20 17:06:18 +08:00
parent b1ffe539fd
commit 8f2b017482
2 changed files with 41 additions and 2 deletions

View File

@ -6,10 +6,10 @@
#
# [*package_ensure*]
# (optional) The state of the package
# Defaults to present
# Defaults to 'present'
#
class magnum::client (
$package_ensure = present
$package_ensure = 'present'
) {
include ::magnum::deps

View File

@ -0,0 +1,39 @@
require 'spec_helper'
describe 'magnum::client' do
shared_examples_for 'magnum client' do
it { is_expected.to contain_class('magnum::deps') }
it { is_expected.to contain_class('magnum::params') }
it 'installs magnum client package' do
is_expected.to contain_package('python-magnumclient').with(
:ensure => 'present',
:name => platform_params[:client_package],
:tag => 'openstack',
)
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())
end
let(:platform_params) do
case facts[:osfamily]
when 'Debian'
{ :client_package => 'python-magnumclient' }
when 'RedHat'
{ :client_package => 'python2-magnumclient' }
end
end
it_configures 'magnum client'
end
end
end