diff options
| author | Markus Roberts <Markus@reality.com> | 2010-10-22 07:09:30 -0700 |
|---|---|---|
| committer | Nick Lewis <nick@puppetlabs.com> | 2011-04-12 12:47:31 -0700 |
| commit | e5609ffefb4132049a969d88f74138058fe78694 (patch) | |
| tree | 8c04fc6413b350214935eeb54a94a9265100c1e2 /spec/unit/util | |
| parent | 1954bbfe175ae7f18316e57af43362eb4ed73553 (diff) | |
| download | puppet-e5609ffefb4132049a969d88f74138058fe78694.tar.gz puppet-e5609ffefb4132049a969d88f74138058fe78694.tar.xz puppet-e5609ffefb4132049a969d88f74138058fe78694.zip | |
Step towards #5027 -- add Logging#deprication_warning facility
This commit adds a method analogous to Puppet.warn which 1) only logs each
message the first time it is received and 2) only logs the first 100 messages
it receives. Messages are logged via warn.
This could easily be made more flexible by making the hard limit and effective
log level user settable, if desired.
Diffstat (limited to 'spec/unit/util')
| -rwxr-xr-x | spec/unit/util/logging_spec.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/unit/util/logging_spec.rb b/spec/unit/util/logging_spec.rb index edc88f115..1585c3e64 100755 --- a/spec/unit/util/logging_spec.rb +++ b/spec/unit/util/logging_spec.rb @@ -92,4 +92,29 @@ describe Puppet::Util::Logging do end end end + + describe "when sending a deprication warning" do + before do + @logger.clear_deprication_warnings + end + + it "should the message with warn" do + @logger.expects(:warn).with('foo') + @logger.deprication_warning 'foo' + end + + it "should only log each unique message once" do + @logger.expects(:warn).with('foo').once + 5.times { @logger.deprication_warning 'foo' } + end + + it "should only log the first 100 messages" do + (1..100).each { |i| + @logger.expects(:warn).with(i).once + @logger.deprication_warning i + } + @logger.expects(:warn).with(101).never + @logger.deprication_warning 101 + end + end end |
