summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuke Kanies <luke@puppetlabs.com>2010-04-13 12:04:18 -0700
committertest branch <puppet-dev@googlegroups.com>2010-02-17 06:50:53 -0800
commit047ebfee96aa6c9471883a71fef4f3a4086cd149 (patch)
tree0cf9b974e2432f7f0652b2a3da9d006c6f9915aa
parent2fae0bded559a23dcab5338dd899e272e0d0678e (diff)
downloadpuppet-047ebfee96aa6c9471883a71fef4f3a4086cd149.tar.gz
puppet-047ebfee96aa6c9471883a71fef4f3a4086cd149.tar.xz
puppet-047ebfee96aa6c9471883a71fef4f3a4086cd149.zip
Fixing Parser::Resource param validation
It was previously not allowing false values. Signed-off-by: Luke Kanies <luke@puppetlabs.com>
-rw-r--r--lib/puppet/parser/resource.rb2
-rwxr-xr-xspec/unit/parser/resource.rb5
2 files changed, 6 insertions, 1 deletions
diff --git a/lib/puppet/parser/resource.rb b/lib/puppet/parser/resource.rb
index 1ae065f3c..3e012247b 100644
--- a/lib/puppet/parser/resource.rb
+++ b/lib/puppet/parser/resource.rb
@@ -168,7 +168,7 @@ class Puppet::Parser::Resource < Puppet::Resource
# if we ever receive a parameter named 'tag', set
# the resource tags with its value.
def set_parameter(param, value = nil)
- if value
+ if ! value.nil?
param = Puppet::Parser::Resource::Param.new(
:name => param, :value => value, :source => self.source
)
diff --git a/spec/unit/parser/resource.rb b/spec/unit/parser/resource.rb
index ca73bfb1a..5b2a16ac0 100755
--- a/spec/unit/parser/resource.rb
+++ b/spec/unit/parser/resource.rb
@@ -580,6 +580,11 @@ describe Puppet::Parser::Resource do
lambda { @resource.set_parameter("myparam") }.should raise_error(ArgumentError)
end
+ it "should allow parameters to be set to 'false'" do
+ @resource.set_parameter("myparam", false)
+ @resource["myparam"].should be_false
+ end
+
it "should use its source when provided a parameter name and value" do
@resource.set_parameter("myparam", "myvalue")
@resource["myparam"].should == "myvalue"