]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/stdlib/spec/acceptance/has_key_spec.rb
upgrade to stdlib 4.6.1
[dsa-puppet.git] / 3rdparty / modules / stdlib / spec / acceptance / has_key_spec.rb
1 #! /usr/bin/env ruby -S rspec
2 require 'spec_helper_acceptance'
3
4 describe 'has_key function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do
5   describe 'success' do
6     it 'has_keys in hashes' do
7       pp = <<-EOS
8       $a = { 'aaa' => 'bbb','bbb' => 'ccc','ddd' => 'eee' }
9       $b = 'bbb'
10       $c = true
11       $o = has_key($a,$b)
12       if $o == $c {
13         notify { 'output correct': }
14       }
15       EOS
16
17       apply_manifest(pp, :catch_failures => true) do |r|
18         expect(r.stdout).to match(/Notice: output correct/)
19       end
20     end
21     it 'has_keys not in hashes' do
22       pp = <<-EOS
23       $a = { 'aaa' => 'bbb','bbb' => 'ccc','ddd' => 'eee' }
24       $b = 'ccc'
25       $c = false
26       $o = has_key($a,$b)
27       if $o == $c {
28         notify { 'output correct': }
29       }
30       EOS
31
32       apply_manifest(pp, :catch_failures => true) do |r|
33         expect(r.stdout).to match(/Notice: output correct/)
34       end
35     end
36   end
37   describe 'failure' do
38     it 'handles improper argument counts'
39     it 'handles non-hashes'
40   end
41 end