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

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)