Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re^5: Strategy for conditional logging in tests

by Thilosophy (Curate)
on Apr 02, 2008 at 08:42 UTC ( #677913=note: print w/ replies, xml ) Need Help??


in reply to Re^4: Strategy for conditional logging in tests
in thread Strategy for conditional logging in tests

Maybe there is something I do not understand about Log4Perl, but could you not call Log::Log4perl->appender_thresholds_adjust from within your test script? The whole point of a configurable logging framework seems to be that you can configure logging from outside of the code that does the actual logging.


Comment on Re^5: Strategy for conditional logging in tests
Download Code
Re^6: Strategy for conditional logging in tests
by andreas1234567 (Vicar) on Apr 02, 2008 at 09:29 UTC
    Brilliant, I never thought of that. It works:
    # foo.t use strict; use warnings; use Test::More qw/no_plan/; use Test::Exception; require_ok(q{foo.pl}); Log::Log4perl->appender_thresholds_adjust(7); # disable logging # ------ negative tests for add() ------ throws_ok { add(); } qr/error/i, q{Expect error when no args}; ... Log::Log4perl->appender_thresholds_adjust(-7); # enable logging # ------ positive tests for add() ------ cmp_ok(add(2,2), q{==}, 4, q{Expect 2+2=4}); # Note: I want a warning here: cmp_ok(add(1000,1000), q{==}, 2000, q{Expect 1000+1000=2000}); __END__
    This gives me the warning I wanted:
    $ prove foo.t foo......1/? [WARN] 2008/04/02 11:26:41 main::add foo.pl:20 - possible + overflow foo......ok All tests successful. Files=1, Tests=8, 1 wallclock secs ( 0.01 usr 0.00 sys + 0.08 cusr + 0.01 csys = 0.10 CPU) Result: PASS
    Thanks Thilosophy!
    --
    Andreas

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://677913]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (16)
As of 2015-07-06 17:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (77 votes), past polls