From: Luke Kanies <[email protected]> Some tests didn't define this setting which caused this method to fail.
Signed-off-by: Luke Kanies <[email protected]> Signed-off-by: Jesse Wolfe <[email protected]> --- lib/puppet/util/settings.rb | 5 ++--- spec/unit/util/settings.rb | 7 +++++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/puppet/util/settings.rb b/lib/puppet/util/settings.rb index e6e1333..3a28c46 100644 --- a/lib/puppet/util/settings.rb +++ b/lib/puppet/util/settings.rb @@ -163,11 +163,10 @@ class Puppet::Util::Settings end def without_noop - old_noop = value(:noop,:cli) - set_value(:noop, false, :cli) + old_noop = value(:noop,:cli) and set_value(:noop, false, :cli) if valid?(:noop) yield ensure - set_value(:noop, old_noop, :cli) + set_value(:noop, old_noop, :cli) if valid?(:noop) end def include?(name) diff --git a/spec/unit/util/settings.rb b/spec/unit/util/settings.rb index 4855df4..8cc7488 100755 --- a/spec/unit/util/settings.rb +++ b/spec/unit/util/settings.rb @@ -1034,5 +1034,12 @@ describe Puppet::Util::Settings do @settings.without_noop { raise } rescue nil @settings.value(:noop, :cli).should be_true end + + it "should work even if no 'noop' setting is available" do + settings = Puppet::Util::Settings.new + stuff = nil + settings.without_noop { stuff = "yay" } + stuff.should == "yay" + end end end -- 1.6.3.3 -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.
