From fb5c1d7bbe629df6214af9b47e522fb282983beb Mon Sep 17 00:00:00 2001 From: Brice Figureau Date: Sun, 6 Jun 2010 15:40:44 +0200 Subject: Fix #3907 - Hash couldn't be initialized with an empty hash The following manifest was failing: $data = {} This patch makes sure we initalize our ast hash with an empty ruby hash when it is created without any values. Signed-off-by: Brice Figureau --- spec/unit/parser/ast/asthash.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'spec/unit/parser') diff --git a/spec/unit/parser/ast/asthash.rb b/spec/unit/parser/ast/asthash.rb index c6839ab4d..fc8e1c7ea 100644 --- a/spec/unit/parser/ast/asthash.rb +++ b/spec/unit/parser/ast/asthash.rb @@ -78,6 +78,18 @@ describe Puppet::Parser::AST::ASTHash do operator.evaluate(@scope).should == { key1 => "b", key2 => "d" } end + describe "when being initialized without arguments" do + it "should evaluate to an empty hash" do + hash = Puppet::Parser::AST::ASTHash.new({}) + hash.evaluate(@scope).should == {} + end + + it "should support merging" do + hash = Puppet::Parser::AST::ASTHash.new({}) + hash.merge({"a" => "b"}).should == {"a" => "b"} + end + end + it "should return a valid string with to_s" do hash = Puppet::Parser::AST::ASTHash.new(:value => { "a" => "b", "c" => "d" }) -- cgit