Replace warning with slightly better testing

Testing LOGWARN was generating a real warning that polluted test output.
Instead, let's catch the warning and test that it actually happens.
This commit is contained in:
Jared Johnson 2014-09-12 01:23:09 -05:00
parent bf2cfcf4e3
commit cc25532593

View File

@ -22,7 +22,17 @@ __load_logging();
done_testing(); done_testing();
sub __log { sub __log {
my $warned = '';
local $SIG{__WARN__} = sub {
if ( $_[0] eq "$$ test log message\n" ) {
$warned = join ' ', @_;
}
else {
warn @_;
}
};
ok( $qp->log(LOGWARN, "test log message"), 'log'); ok( $qp->log(LOGWARN, "test log message"), 'log');
is( $warned, "$$ test log message\n", 'LOGWARN emitted correct warning' );
} }
sub __config_dir { sub __config_dir {