MODULES-1413 Ability to for future parser to use member with FixNum types

This commit is contained in:
Travis Fields 2014-10-29 22:02:13 -07:00
parent 385f009488
commit f19aea5a75
2 changed files with 30 additions and 1 deletions

View file

@ -32,8 +32,9 @@ Would return: false
item = arguments[1] item = arguments[1]
raise(Puppet::ParseError, 'member(): You must provide item ' + raise(Puppet::ParseError, 'member(): You must provide item ' +
'to search for within array given') if item.empty? 'to search for within array given') if item.respond_to?('empty?') && item.empty?
result = array.include?(item) result = array.include?(item)

View file

@ -2,6 +2,13 @@
require 'spec_helper_acceptance' require 'spec_helper_acceptance'
describe 'member function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do describe 'member function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do
shared_examples 'item found' do
it 'should output correctly' do
apply_manifest(pp, :catch_failures => true) do |r|
expect(r.stdout).to match(/Notice: output correct/)
end
end
end
describe 'success' do describe 'success' do
it 'members arrays' do it 'members arrays' do
pp = <<-EOS pp = <<-EOS
@ -18,8 +25,29 @@ describe 'member function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('oper
expect(r.stdout).to match(/Notice: output correct/) expect(r.stdout).to match(/Notice: output correct/)
end end
end end
describe 'members array of integers' do
it_should_behave_like 'item found' do
let(:pp) { <<-EOS
if member( [1,2,3,4], 4 ){
notify { 'output correct': }
}
EOS
}
end
end
describe 'members of mixed array' do
it_should_behave_like 'item found' do
let(:pp) { <<-EOS
if member( ['a','4',3], 'a' ){
notify { 'output correct': }
}
EOS
}
end
end
it 'members arrays without members' it 'members arrays without members'
end end
describe 'failure' do describe 'failure' do
it 'handles improper argument counts' it 'handles improper argument counts'
end end