summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrien Thebo <git@somethingsinistral.net>2013-03-18 15:05:23 -0700
committerAdrien Thebo <git@somethingsinistral.net>2013-03-18 15:05:23 -0700
commit967f9916d16ea4f5a8557c9c66ddb878872337ca (patch)
treee20db53336a3034205263d09d7f6bbf0eec1df2e
parent1e2ee5bd01b85258548bb7c0aabe4ce0938b2560 (diff)
parente80207bede37e498c32bea6d56c46f1dd709721e (diff)
downloadpuppet-stdlib-967f9916d16ea4f5a8557c9c66ddb878872337ca.tar.gz
puppet-stdlib-967f9916d16ea4f5a8557c9c66ddb878872337ca.tar.bz2
Merge branch 'pull-98' into 2.x
-rw-r--r--lib/puppet/parser/functions/flatten.rb2
-rwxr-xr-xspec/unit/puppet/parser/functions/flatten_spec.rb4
2 files changed, 5 insertions, 1 deletions
diff --git a/lib/puppet/parser/functions/flatten.rb b/lib/puppet/parser/functions/flatten.rb
index 781da78..a1ed183 100644
--- a/lib/puppet/parser/functions/flatten.rb
+++ b/lib/puppet/parser/functions/flatten.rb
@@ -16,7 +16,7 @@ Would return: ['a','b','c']
) do |arguments|
raise(Puppet::ParseError, "flatten(): Wrong number of arguments " +
- "given (#{arguments.size} for 1)") if arguments.size < 1
+ "given (#{arguments.size} for 1)") if arguments.size != 1
array = arguments[0]
diff --git a/spec/unit/puppet/parser/functions/flatten_spec.rb b/spec/unit/puppet/parser/functions/flatten_spec.rb
index d4dfd20..dba7a6b 100755
--- a/spec/unit/puppet/parser/functions/flatten_spec.rb
+++ b/spec/unit/puppet/parser/functions/flatten_spec.rb
@@ -11,6 +11,10 @@ describe "the flatten function" do
lambda { scope.function_flatten([]) }.should( raise_error(Puppet::ParseError))
end
+ it "should raise a ParseError if there is more than 1 argument" do
+ lambda { scope.function_flatten([[], []]) }.should( raise_error(Puppet::ParseError))
+ end
+
it "should flatten a complex data structure" do
result = scope.function_flatten([["a","b",["c",["d","e"],"f","g"]]])
result.should(eq(["a","b","c","d","e","f","g"]))