puppet-cinder/spec/defines/cinder_backend_iscsi_spec.rb
Sebastien Badia 4224fdd12e spec: updates for rspec-puppet 2.x and rspec 3.x
This patch aim to update our specs test in order to work with the

rspec-puppet release 2.0.0, in the mean time, we update rspec syntax
in order to be prepared for rspec 3.x move.

In details:

  * Use shared_examples "a Puppet::Error" for puppet::error tests
  * Convert 'should' keyword to 'is_expected.to' (prepare rspec 3.x)
  * Fix spec tests for rspec-puppet 2.0.0
  * Upgrade and pin rspec-puppet from 1.0.1 to 2.0.0
  * Clean Gemfile (remove over-specificication of runtime deps of puppetlabs_spec_helper)

Change-Id: Id5b428fb518f40cf92cd27078d36f19b6d60226b
Card: https://trello.com/c/eHXc1Ryd/4-investigate-the-necessary-change-to-be-rspec-puppet-2-0-0-compliant
2015-03-11 17:58:49 +01:00

85 lines
2.1 KiB
Ruby

require 'spec_helper'
describe 'cinder::backend::iscsi' do
let(:title) {'hippo'}
let :req_params do {
:iscsi_ip_address => '127.0.0.2',
:iscsi_helper => 'tgtadm',
}
end
let :facts do
{:osfamily => 'Debian'}
end
let :params do
req_params
end
let :iser_params do
{:iscsi_protocol => 'iser'}
end
let :volumes_dir_params do
{:volumes_dir => '/etc/cinder/volumes'}
end
describe 'with default params' do
it 'should configure iscsi driver' do
is_expected.to contain_cinder_config('hippo/volume_backend_name').with(
:value => 'hippo')
is_expected.to contain_cinder_config('hippo/volume_driver').with(
:value => 'cinder.volume.drivers.lvm.LVMVolumeDriver')
is_expected.to contain_cinder_config('hippo/iscsi_ip_address').with(
:value => '127.0.0.2')
is_expected.to contain_cinder_config('hippo/iscsi_helper').with(
:value => 'tgtadm')
is_expected.to contain_cinder_config('hippo/volume_group').with(
:value => 'cinder-volumes')
is_expected.to contain_cinder_config('hippo/volumes_dir').with(
:value => '/var/lib/cinder/volumes')
is_expected.to contain_cinder_config('hippo/iscsi_protocol').with(
:value => 'iscsi')
end
end
describe 'with iser protocol' do
before :each do
params.merge!(iser_params)
end
it 'should configure iscsi driver with iser protocol' do
is_expected.to contain_cinder_config('hippo/iscsi_protocol').with(
:value => 'iser')
end
end
describe 'with non-default $volumes_dir' do
before :each do
params.merge!(volumes_dir_params)
end
it 'should configure iscsi driver with /etc/cinder/volumes as volumes_dir' do
is_expected.to contain_cinder_config('hippo/volumes_dir').with(
:value => '/etc/cinder/volumes'
)
end
end
describe 'with RedHat' do
let :facts do
{:osfamily => 'RedHat'}
end
it { is_expected.to contain_file_line('cinder include').with(
:line => 'include /var/lib/cinder/volumes/*',
:path => '/etc/tgt/targets.conf'
) }
end
end