]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/stdlib/spec/acceptance/prefix_spec.rb
upgrade to stdlib 4.6.1
[dsa-puppet.git] / 3rdparty / modules / stdlib / spec / acceptance / prefix_spec.rb
1 #! /usr/bin/env ruby -S rspec
2 require 'spec_helper_acceptance'
3
4 describe 'prefix function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do
5   describe 'success' do
6     it 'prefixes array of values' do
7       pp = <<-EOS
8       $o = prefix(['a','b','c'],'p')
9       notice(inline_template('prefix is <%= @o.inspect %>'))
10       EOS
11
12       apply_manifest(pp, :catch_failures => true) do |r|
13         expect(r.stdout).to match(/prefix is \["pa", "pb", "pc"\]/)
14       end
15     end
16     it 'prefixs with empty array' do
17       pp = <<-EOS
18       $o = prefix([],'p')
19       notice(inline_template('prefix is <%= @o.inspect %>'))
20       EOS
21
22       apply_manifest(pp, :catch_failures => true) do |r|
23         expect(r.stdout).to match(/prefix is \[\]/)
24       end
25     end
26     it 'prefixs array of values with undef' do
27       pp = <<-EOS
28       $o = prefix(['a','b','c'], undef)
29       notice(inline_template('prefix is <%= @o.inspect %>'))
30       EOS
31
32       apply_manifest(pp, :catch_failures => true) do |r|
33         expect(r.stdout).to match(/prefix is \["a", "b", "c"\]/)
34       end
35     end
36   end
37   describe 'failure' do
38     it 'fails with no arguments'
39     it 'fails when first argument is not array'
40     it 'fails when second argument is not string'
41   end
42 end