diff options
author | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-07-31 15:01:20 -0400 |
---|---|---|
committer | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-07-31 15:01:20 -0400 |
commit | e310b1fdab7be1478b464167d2be20f0d4e5f63a (patch) | |
tree | 54a0ec7647debbf3176e5e71d66257f223a47330 | |
parent | c5f6c26d67a4f3777cec4af1a3850a6a5a2ccbc1 (diff) | |
parent | a6ad0af08e408adbb4b25684b18feb8aee12cf3e (diff) |
Merge pull request #306 from hunner/fix_concat
(MODULES-1195) Rebase of #202
-rw-r--r-- | lib/puppet/parser/functions/concat.rb | 6 | ||||
-rwxr-xr-x | spec/functions/concat_spec.rb | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/lib/puppet/parser/functions/concat.rb b/lib/puppet/parser/functions/concat.rb index 6c86382..0d35b07 100644 --- a/lib/puppet/parser/functions/concat.rb +++ b/lib/puppet/parser/functions/concat.rb @@ -28,11 +28,7 @@ Would result in: raise(Puppet::ParseError, 'concat(): Requires array to work with') end - if b.is_a?(Array) - result = a.concat(b) - else - result = a << b - end + result = a + Array(b) return result end diff --git a/spec/functions/concat_spec.rb b/spec/functions/concat_spec.rb index b853b4c..49cb2ad 100755 --- a/spec/functions/concat_spec.rb +++ b/spec/functions/concat_spec.rb @@ -27,4 +27,9 @@ describe "the concat function" do expect(result).to(eq(['1','2','3',['4','5'],'6'])) end + it "should leave the original array intact" do + array_original = ['1','2','3'] + result = scope.function_concat([array_original,['4','5','6']]) + array_original.should(eq(['1','2','3'])) + end end |