cookbook-openstack-common/spec/default-suse_spec.rb
Mark Vanderwiel abd313ac8d Setting up repo for master Juno branch
* Update metadata versions
* Updates for icehouse specific attributes
* Removing Strainer file
* Updating Gems
  * chef (11.12.0)
  * chefspec (4.0.0)
  * rspec (3.0.0)
* Cleanup specs for 4.x

Change-Id: I9a495cdb90feaf7508a5b861557856dd19340272
Partial-Bug: 1349865
2014-07-29 11:09:11 -05:00

47 lines
1.9 KiB
Ruby

# encoding: UTF-8
require_relative 'spec_helper'
describe 'openstack-common::default' do
describe 'suse' do
let(:runner) { ChefSpec::Runner.new(SUSE_OPTS) }
let(:node) { runner.node }
let(:chef_run) do
node.set_unless['lsb']['description'] = 'SUSE Linux Enterprise Server 11 (x86_64)'
node.set_unless['lsb']['release'] = '11'
runner.converge(described_recipe)
end
it 'adds the openstack repository key, but not the repository' do
allow(Mixlib::ShellOut).to receive_message_chain(
new: 'rpm -qa gpg-pubkey', run_command: nil, stdout: nil,
new: 'zypper repos --export -').and_return(
'http://download.opensuse.org/repositories/Cloud:/OpenStack:/Juno/SLE_11_SP3/')
expect(chef_run).to run_bash('add repository key')
expect(chef_run).not_to run_execute('add repository').with(command: /zypper addrepo/)
end
it 'adds the repository and the key' do
allow(Mixlib::ShellOut).to receive_message_chain(
new: 'rpm -qa gpg-pubkey', run_command: nil, stdout: nil,
new: 'zypper repos --export -').and_return('')
expect(chef_run).to run_bash('add repository key')
expect(chef_run).to run_execute('add repository').with(
command: 'zypper addrepo --check '\
"http://download.opensuse.org/repositories/Cloud:/OpenStack:/#{node['openstack']['release'].capitalize}/SLE_11_SP3/ "\
'Cloud:OpenStack:Juno')
end
it 'does not add the repository nor the key' do
allow(Mixlib::ShellOut).to receive_message_chain(
new: 'rpm -qa gpg-pubkey', run_command: nil, stdout: nil,
new: 'zypper repos --export -').and_return(
'd85f9316',
'http://download.opensuse.org/repositories/Cloud:/OpenStack:/Juno/SLE_11_SP3/')
expect(chef_run).not_to run_bash('add repository key')
expect(chef_run).not_to run_execute('add repository').with(command: /zypper addrepo/)
end
end
end