X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Fspec%2Ffunctions%2Fensure_packages_spec.rb;h=6d1a8418123d08c05a1b79c459e4150ac68c572f;hb=59812388abf4638d6065ffda934d1866af902302;hp=190e58022cba7f86e576c70b5e1b8958e8411aab;hpb=6963202b4b62c2816655ac9532521b018fdf83bd;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/spec/functions/ensure_packages_spec.rb b/3rdparty/modules/stdlib/spec/functions/ensure_packages_spec.rb old mode 100755 new mode 100644 index 190e58022..6d1a84181 --- a/3rdparty/modules/stdlib/spec/functions/ensure_packages_spec.rb +++ b/3rdparty/modules/stdlib/spec/functions/ensure_packages_spec.rb @@ -2,70 +2,71 @@ require 'spec_helper' describe 'ensure_packages' do it { is_expected.not_to eq(nil) } - it { is_expected.to run.with_params().and_raise_error(Puppet::ParseError) } + it { is_expected.to run.with_params.and_raise_error(Puppet::ParseError) } it { - pending("should not accept numbers as arguments") + pending('should not accept numbers as arguments') is_expected.to run.with_params(1).and_raise_error(Puppet::ParseError) } it { - pending("should not accept numbers as arguments") - is_expected.to run.with_params(["packagename", 1]).and_raise_error(Puppet::ParseError) + pending('should not accept numbers as arguments') + is_expected.to run.with_params(['packagename', 1]).and_raise_error(Puppet::ParseError) } - it { is_expected.to run.with_params("packagename") } - it { is_expected.to run.with_params(["packagename1", "packagename2"]) } + it { is_expected.to run.with_params('packagename') } + it { is_expected.to run.with_params(['packagename1', 'packagename2']) } - context 'given a catalog with "package { puppet: ensure => absent }"' do + context 'when given a catalog with "package { puppet: ensure => absent }"' do let(:pre_condition) { 'package { puppet: ensure => absent }' } describe 'after running ensure_package("facter")' do - before { subject.call(['facter']) } + before(:each) { subject.execute('facter') } # this lambda is required due to strangeness within rspec-puppet's expectation handling - it { expect(lambda { catalogue }).to contain_package('puppet').with_ensure('absent') } - it { expect(lambda { catalogue }).to contain_package('facter').with_ensure('present') } + it { expect(-> { catalogue }).to contain_package('puppet').with_ensure('absent') } + it { expect(-> { catalogue }).to contain_package('facter').with_ensure('present') } end describe 'after running ensure_package("facter", { "provider" => "gem" })' do - before { subject.call(['facter', { "provider" => "gem" }]) } + before(:each) { subject.execute('facter', 'provider' => 'gem') } # this lambda is required due to strangeness within rspec-puppet's expectation handling - it { expect(lambda { catalogue }).to contain_package('puppet').with_ensure('absent').without_provider() } - it { expect(lambda { catalogue }).to contain_package('facter').with_ensure('present').with_provider("gem") } + it { expect(-> { catalogue }).to contain_package('puppet').with_ensure('absent').without_provider } + it { expect(-> { catalogue }).to contain_package('facter').with_ensure('present').with_provider('gem') } end end - context 'given an empty packages array' do + context 'when given an empty packages array' do let(:pre_condition) { 'notify { "hi": } -> Package <| |>; $somearray = ["vim",""]; ensure_packages($somearray)' } describe 'after running ensure_package(["vim", ""])' do - it { expect { catalogue }.to raise_error(Puppet::ParseError, /Empty String provided/) } + it { expect { catalogue }.to raise_error(Puppet::ParseError, %r{Empty String provided}) } end end - context 'given hash of packages' do - before { subject.call([{"foo" => { "provider" => "rpm" }, "bar" => { "provider" => "gem" }}, { "ensure" => "present"}]) } - before { subject.call([{"パッケージ" => { "ensure" => "absent"}}]) } - before { subject.call([{"ρǻ¢κầģẻ" => { "ensure" => "absent"}}]) } + context 'when given hash of packages' do + before(:each) do + subject.execute({ 'foo' => { 'provider' => 'rpm' }, 'bar' => { 'provider' => 'gem' } }, 'ensure' => 'present') + subject.execute('パッケージ' => { 'ensure' => 'absent' }) + subject.execute('ρǻ¢κầģẻ' => { 'ensure' => 'absent' }) + end # this lambda is required due to strangeness within rspec-puppet's expectation handling - it { expect(lambda { catalogue }).to contain_package('foo').with({'provider' => 'rpm', 'ensure' => 'present'}) } - it { expect(lambda { catalogue }).to contain_package('bar').with({'provider' => 'gem', 'ensure' => 'present'}) } + it { expect(-> { catalogue }).to contain_package('foo').with('provider' => 'rpm', 'ensure' => 'present') } + it { expect(-> { catalogue }).to contain_package('bar').with('provider' => 'gem', 'ensure' => 'present') } - context 'should run with UTF8 and double byte characters' do - it { expect(lambda { catalogue }).to contain_package('パッケージ').with({'ensure' => 'absent'}) } - it { expect(lambda { catalogue }).to contain_package('ρǻ¢κầģẻ').with({'ensure' => 'absent'}) } + context 'with UTF8 and double byte characters' do + it { expect(-> { catalogue }).to contain_package('パッケージ').with('ensure' => 'absent') } + it { expect(-> { catalogue }).to contain_package('ρǻ¢κầģẻ').with('ensure' => 'absent') } end end - context 'given a catalog with "package { puppet: ensure => present }"' do + context 'when given a catalog with "package { puppet: ensure => present }"' do let(:pre_condition) { 'package { puppet: ensure => present }' } describe 'after running ensure_package("puppet", { "ensure" => "installed" })' do - before { subject.call(['puppet', { "ensure" => "installed" }]) } + before(:each) { subject.execute('puppet', 'ensure' => 'installed') } # this lambda is required due to strangeness within rspec-puppet's expectation handling - it { expect(lambda { catalogue }).to contain_package('puppet').with_ensure('present') } + it { expect(-> { catalogue }).to contain_package('puppet').with_ensure('present') } end end - end