in reply to Re^6: STDERR in Test Results
in thread STDERR in Test Results
It seems, quite a few testers don't have Test::Warn installed...
You should be able to detect that and skip the test(s).
Very crudely, something like this should work (completely untested):
#... use Test::More tests => 42; eval 'use Test::Warn;'; # just ignore if we can't load Test::Warn #... SKIP: { unless ($INC{'Test/Warn.pm'}) { # test if Test::Warn was loaded skip 'Test::Warn is not available', 1; } warning_like { warn "foo" } qr/foo/; # you may need to put this li +ne in a string eval because warning_like is exported by Test::Warn } # ...
Or maybe put all warnings tests in a separate script and skip the entire script if Test::Warn is not available (again untested):
# ... use Test::More; BEGIN { if (eval 'use Test::Warn; 1') { Test::More->import(tests => 42); } else { Test::More->import(skip_all => 'Test::Warn is not available'); # this line won't be reached, see Test::More } } warning_like { warn "foo" } qr/foo/; # ...
Alexander
|
|---|