NAME
Test2::Tools::Warnings - Tools to verify warnings.
DESCRIPTION
This is a collection of tools that can be used to test code that issues warnings.
SYNOPSIS
use Test2::Tools::Warnings qw/warns warning warnings no_warnings/;
ok(warns { warn 'a' }, "the code warns");
ok(!warns { 1 }, "The code does not warn");
is(warns { warn 'a'; warn 'b' }, 2, "got 2 warnings");
ok(no_warnings { ... }, "code did not warn");
like(
warning { warn 'xxx' },
qr/xxx/,
"Got expected warning"
);
is(
warnings { warn "a\n"; warn "b\n" },
[
"a\n",
"b\n",
],
"Got 2 specific warnings"
);
EXPORTS
All subs are exported by default.
- $count = warns { ... }
-
Returns the count of warnings produced by the block. This will always return 0, or a positive integer.
- $warning = warning { ... }
-
Returns the first warning generated by the block. If the block produces more than 1 warning they will all be shown as notes, and an actual warning will tell you about it.
- $warnings_ref = warnings { ... }
-
Returns an arrayref with all the warnings produced by the block. This will always return an array reference. If there are no warning this will return an empty array reference.
- $bool = no_warnings { ... }
-
Return true if the block has no warnings. Returns false if there are warnings.
SOURCE
The source code repository for Test2-Suite can be found at http://github.com/Test-More/Test2-Suite/.
MAINTAINERS
AUTHORS
COPYRIGHT
Copyright 2016 Chad Granum <exodist@cpan.org>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
See http://dev.perl.org/licenses/