Update stdlib
[mirror/dsa-puppet.git] / 3rdparty / modules / stdlib / spec / acceptance / values_spec.rb
1 #! /usr/bin/env ruby -S rspec
2 require 'spec_helper_acceptance'
3
4 describe 'values function' do
5   describe 'success' do
6     it 'returns an array of values' do
7       pp = <<-EOS
8       $arg = {
9         'a' => 1,
10         'b' => 2,
11         'c' => 3,
12       }
13       $output = values($arg)
14       notice(inline_template('<%= @output.sort.inspect %>'))
15       EOS
16       expect(apply_manifest(pp, :catch_failures => true).stdout).to match(/\[1, 2, 3\]/)
17     end
18   end
19   describe 'failure' do
20     it 'handles non-hash arguments' do
21       pp = <<-EOS
22       $arg = "foo"
23       $output = values($arg)
24       notice(inline_template('<%= @output.inspect %>'))
25       EOS
26
27       expect(apply_manifest(pp, :expect_failures => true).stderr).to match(/Requires hash/)
28     end
29   end
30 end