use strict; use warnings FATAL => 'all'; # another demonstration of the various features of Test::Warnings, where # Test::More::done_testing is used use Test::More; use Test::Warnings ':all'; is(1, 1, 'passing test'); had_no_warnings; ok(!allowing_warnings, 'warnings are not currently allowed'); allow_warnings; ok(allowing_warnings, 'warnings are now allowed'); warn 'this warning will not cause a failure'; had_no_warnings; allow_warnings(0); ok(!allowing_warnings, 'warnings are not allowed again'); warn 'oh noes, something warned!'; # this will now fail. had_no_warnings; note 'we are done; call done_testing to signal completion. had_no_warnings will be called automatically.'; done_testing;