From 847233ffd66005124f23d028601dfe565c2bf026 Mon Sep 17 00:00:00 2001 From: Luke Kanies Date: Mon, 4 Jan 2010 16:32:33 -0800 Subject: Adding []/[]= support to Parser::Resource Signed-off-by: Luke Kanies --- lib/puppet/parser/resource.rb | 4 ++++ spec/unit/parser/resource.rb | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/lib/puppet/parser/resource.rb b/lib/puppet/parser/resource.rb index 651ed4224..63d028c0c 100644 --- a/lib/puppet/parser/resource.rb +++ b/lib/puppet/parser/resource.rb @@ -56,6 +56,10 @@ class Puppet::Parser::Resource end end + def []=(param, value) + set_parameter(param, value) + end + def builtin=(bool) @ref.builtin = bool end diff --git a/spec/unit/parser/resource.rb b/spec/unit/parser/resource.rb index d41d4f48b..2b57f7898 100755 --- a/spec/unit/parser/resource.rb +++ b/spec/unit/parser/resource.rb @@ -75,6 +75,16 @@ describe Puppet::Parser::Resource do @resource.to_ral.should == "yay" end + it "should be able to use the indexing operator to access parameters" do + resource = Puppet::Parser::Resource.new(:type => "resource", :title => "testing", :source => "source", :scope => "scope") + resource["foo"] = "bar" + resource["foo"].should == "bar" + end + + it "should return the title when asked for a parameter named 'title'" do + Puppet::Parser::Resource.new(:type => "resource", :title => "testing", :source => "source", :scope => "scope")[:title].should == "testing" + end + describe "when initializing" do before do @arguments = {:type => "resource", :title => "testing", :scope => stub('scope', :source => mock('source'))} -- cgit