X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Fspec%2Facceptance%2Fvalues_at_spec.rb;h=ffd6f4c9f97e6c94918748312190df0108e4210d;hb=6f656bd4265e3dab13b9af2bf96e9044322e9d8f;hp=da63cf307a99a8b4f15d18b6254e64dd1434c435;hpb=ad88f67c13ae0f1a08936dad643f1e3509ab5f40;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/spec/acceptance/values_at_spec.rb b/3rdparty/modules/stdlib/spec/acceptance/values_at_spec.rb old mode 100755 new mode 100644 index da63cf307..ffd6f4c9f --- a/3rdparty/modules/stdlib/spec/acceptance/values_at_spec.rb +++ b/3rdparty/modules/stdlib/spec/acceptance/values_at_spec.rb @@ -1,69 +1,67 @@ -#! /usr/bin/env ruby -S rspec require 'spec_helper_acceptance' -describe 'values_at function', :unless => UNSUPPORTED_PLATFORMS.include?(fact('operatingsystem')) do +describe 'values_at function' do describe 'success' do - it 'returns a specific value' do - pp = <<-EOS + pp1 = <<-DOC $one = ['a','b','c','d','e'] $two = 1 $output = values_at($one,$two) notice(inline_template('<%= @output.inspect %>')) - EOS - - expect(apply_manifest(pp, :catch_failures => true).stdout).to match(/\["b"\]/) + DOC + it 'returns a specific value' do + expect(apply_manifest(pp1, :catch_failures => true).stdout).to match(%r{\["b"\]}) end - it 'returns a specific negative index value' do - pending("negative numbers don't work") - pp = <<-EOS + + pp2 = <<-DOC $one = ['a','b','c','d','e'] $two = -1 $output = values_at($one,$two) notice(inline_template('<%= @output.inspect %>')) - EOS - - expect(apply_manifest(pp, :catch_failures => true).stdout).to match(/\["e"\]/) + DOC + it 'returns a specific negative index value' do + pending("negative numbers don't work") + expect(apply_manifest(pp2, :catch_failures => true).stdout).to match(%r{\["e"\]}) end - it 'returns a range of values' do - pp = <<-EOS + + pp3 = <<-DOC $one = ['a','b','c','d','e'] $two = "1-3" $output = values_at($one,$two) notice(inline_template('<%= @output.inspect %>')) - EOS - - expect(apply_manifest(pp, :catch_failures => true).stdout).to match(/\["b", "c", "d"\]/) + DOC + it 'returns a range of values' do + expect(apply_manifest(pp3, :catch_failures => true).stdout).to match(%r{\["b", "c", "d"\]}) end - it 'returns a negative specific value and range of values' do - pp = <<-EOS + + pp4 = <<-DOC $one = ['a','b','c','d','e'] $two = ["1-3",0] $output = values_at($one,$two) notice(inline_template('<%= @output.inspect %>')) - EOS - - expect(apply_manifest(pp, :catch_failures => true).stdout).to match(/\["b", "c", "d", "a"\]/) + DOC + it 'returns a negative specific value and range of values' do + expect(apply_manifest(pp4, :catch_failures => true).stdout).to match(%r{\["b", "c", "d", "a"\]}) end end + describe 'failure' do - it 'handles improper number of arguments' do - pp = <<-EOS + pp5 = <<-DOC $one = ['a','b','c','d','e'] $output = values_at($one) notice(inline_template('<%= @output.inspect %>')) - EOS - - expect(apply_manifest(pp, :expect_failures => true).stderr).to match(/Wrong number of arguments/) + DOC + it 'handles improper number of arguments' do + expect(apply_manifest(pp5, :expect_failures => true).stderr).to match(%r{Wrong number of arguments}) end - it 'handles non-indicies arguments' do - pp = <<-EOS + + pp6 = <<-DOC $one = ['a','b','c','d','e'] $two = [] $output = values_at($one,$two) notice(inline_template('<%= @output.inspect %>')) - EOS - - expect(apply_manifest(pp, :expect_failures => true).stderr).to match(/at least one positive index/) + DOC + it 'handles non-indicies arguments' do + expect(apply_manifest(pp6, :expect_failures => true).stderr).to match(%r{at least one positive index}) end it 'detects index ranges smaller than the start range'