cache server: Add unit tests

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
This commit is contained in:
Emilien Macchi
2013-12-28 22:48:11 +01:00
parent dd2f7c5ba2
commit 2dacdbf42d
3 changed files with 60 additions and 4 deletions

View File

@@ -13,10 +13,12 @@
# License for the specific language governing permissions and limitations
# under the License.
#
# Memcached node
# == Class: privatecloud::cache
#
# Install a cache server (used by OpenStack services)
#
class os_cache_server{
class privatecloud::cache{
class { 'memcached':
listen_ip => $ipaddress_eth0,

View File

@@ -20,7 +20,6 @@ import 'params.pp'
# Import manifests
import 'manifests/automation/*.pp'
import 'manifests/cache/*.pp'
import 'manifests/common/*.pp' # mandatory
import 'manifests/compute/*.pp'
import 'manifests/database/*.pp'
@@ -90,7 +89,7 @@ node 'os-ci-test13', 'os-ci-test12', 'os-ci-test11', /mgmt\d+.enovance.com/ inhe
class {'os_messaging_server': }
# Cache
class {'os_cache_server': }
class {'privatecloud::cache': }
# Networking
class {'os_network_common': }

View File

@@ -0,0 +1,55 @@
#
# Copyright (C) 2013 eNovance SAS <licensing@enovance.com>
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Unit tests for privatecloud::cache
#
require 'spec_helper'
describe 'privatecloud::cache' do
shared_examples_for 'cache server' do
it 'configure memcached with some params' do
should contain_class('memcached').with(
:listen_ip => '10.0.0.1',
:max_memory => '60%',
)
end
end
context 'on Debian platforms' do
let :facts do
{ :osfamily => 'Debian',
:memorysize => '1000 MB',
:processorcount => '1',
:ipaddress_eth0 => '10.0.0.1' }
end
it_configures 'cache server'
end
context 'on RedHat platforms' do
let :facts do
{ :osfamily => 'RedHat',
:memorysize => '1000 MB',
:processorcount => '1',
:ipaddress_eth0 => '10.0.0.1' }
end
it_configures 'cache server'
end
end