Provided by: libtest2-suite-perl_0.000159-1_all bug

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 one  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 warnings, 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 https://github.com/Test-More/Test2-Suite/.

MAINTAINERS

       Chad Granum <exodist@cpan.org>

AUTHORS

       Chad Granum <exodist@cpan.org>

COPYRIGHT

       Copyright 2018 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/

perl v5.36.0                                       2023-10-26                        Test2::Tools::Warnings(3pm)