diff options
| author | Jesse Wolfe <jes5199@gmail.com> | 2010-05-12 18:35:01 -0700 |
|---|---|---|
| committer | test branch <puppet-dev@googlegroups.com> | 2010-02-17 06:50:53 -0800 |
| commit | b7d387e3e71f6af1b2967098b67440f8daa53e7d (patch) | |
| tree | 147958b739b57a470b98e261dccdbbe644fa3dc1 /spec | |
| parent | 342298c4f9fcb2874d4017219a472ddf37dbfc6b (diff) | |
| download | puppet-b7d387e3e71f6af1b2967098b67440f8daa53e7d.tar.gz puppet-b7d387e3e71f6af1b2967098b67440f8daa53e7d.tar.xz puppet-b7d387e3e71f6af1b2967098b67440f8daa53e7d.zip | |
Feature #2935 Puppet[:mode] and Puppet[:name] are read-only
Historically, the Puppet[:name] setting has been settable, but the
results of chaning it are poorly defined.
The switch to modes instead of executable names seems like a good time
to disable this complexity.
Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
Diffstat (limited to 'spec')
| -rwxr-xr-x | spec/unit/util/settings.rb | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/spec/unit/util/settings.rb b/spec/unit/util/settings.rb index afdcf626a..24bd04b27 100755 --- a/spec/unit/util/settings.rb +++ b/spec/unit/util/settings.rb @@ -194,6 +194,30 @@ describe Puppet::Util::Settings do Puppet::Node::Environment.expects(:clear).at_least(1) @settings[:myval] = "memarg" end + + it "should raise an error if we try to set 'name'" do + lambda{ @settings[:name] = "foo" }.should raise_error(ArgumentError) + end + + it "should raise an error if we try to set 'mode'" do + lambda{ @settings[:mode] = "foo" }.should raise_error(ArgumentError) + end + + it "should warn and use [master] if we ask for [puppetmasterd]" do + Puppet.expects(:warning) + @settings.set_value(:myval, "foo", :puppetmasterd) + + @settings.stubs(:mode).returns(:master) + @settings.value(:myval).should == "foo" + end + + it "should warn and use [agent] if we ask for [puppetd]" do + Puppet.expects(:warning) + @settings.set_value(:myval, "foo", :puppetd) + + @settings.stubs(:mode).returns(:agent) + @settings.value(:myval).should == "foo" + end end describe "when returning values" do @@ -250,9 +274,11 @@ describe Puppet::Util::Settings do @settings.value(:one, "env2").should == "twoval" end - it "should have a mode determined by the 'mode' parameter" do + it "should have a mode determined by the 'mode' parameter that cannot be edited" do @settings.setdefaults(:whatever, :mode => ["something", "yayness"]) @settings.mode.should == :something + + lambda{ @settings[:mode] = :other }.should raise_error end end |
