NAME
Test2::Bundle::Extended - Old name for Test2::V0
*** DEPRECATED ***
This bundle has been renamed to Test2::V0, in which the ':v1'
tag has been removed as unnecessary.
DESCRIPTION
This is the big-daddy bundle. This bundle includes nearly every tool, and several plugins, that the Test2 author uses. This bundle is used extensively to test Test2::Suite itself.
SYNOPSIS
use Test2::Bundle::Extended ':v1';
ok(1, "pass");
...
done_testing;
RESOLVING CONFLICTS WITH MOOSE
use Test2::Bundle::Extended '!meta';
Moose and Test2::Bundle::Extended both export very different meta()
subs. Adding '!meta'
to the import args will prevent the sub from being imported. This bundle also exports the sub under the name meta_check()
so you can use that spelling as an alternative.
TAGS
- :v1
- :DEFAULT
-
The following are all identical:
use Test2::Bundle::Extended; use Test2::Bundle::Extended ':v1'; use Test2::Bundle::Extended ':DEFAULT';
RENAMING ON IMPORT
use Test2::Bundle::Extended ':v1', '!ok', ok => {-as => 'my_ok'};
This bundle uses Importer for exporting, as such you can use any arguments it accepts.
Explanation:
- ':v1'
-
Use the default tag, all default exports.
- '!ok'
-
Do not export
ok()
- ok => {-as => 'my_ok'}
-
Actually, go ahead and import
ok()
but under the namemy_ok()
.
If you did not add the '!ok'
argument then you would have both ok()
and my_ok()
PRAGMAS
All of these can be disabled via individual import arguments, or by the -no_pragmas
argument.
use Test2::Bundle::Extended -no_pragmas => 1;
STRICT
strict is turned on for you. You can disable this with the -no_strict
or -no_pragmas
import arguments:
use Test2::Bundle::Extended -no_strict => 1;
WARNINGS
warnings are turned on for you. You can disable this with the -no_warnings
or -no_pragmas
import arguments:
use Test2::Bundle::Extended -no_warnings => 1;
UTF8
This is actually done via the Test2::Plugin::UTF8 plugin, see the "PLUGINS" section for details.
Note: -no_pragmas => 1
will turn off the entire plugin.
PLUGINS
SRAND
See Test2::Plugin::SRand.
This will set the random seed to today's date. You can provide an alternate seed with the -srand
import option:
use Test2::Bundle::Extended -srand => 1234;
UTF8
See Test2::Plugin::UTF8.
This will set the file, and all output handles (including formatter handles), to utf8. This will turn on the utf8 pragma for the current scope.
This can be disabled using the -no_utf8 => 1
or -no_pragmas => 1
import arguments.
use Test2::Bundle::Extended -no_utf8 => 1;
EXIT SUMMARY
See Test2::Plugin::ExitSummary.
This plugin has no configuration.
API FUNCTIONS
See Test2::API for these
TOOLS
TARGET
See Test2::Tools::Target.
You can specify a target class with the -target
import argument. If you do not provide a target then $CLASS
and CLASS()
will not be imported.
use Test2::Bundle::Extended -target => 'My::Class';
print $CLASS; # My::Class
print CLASS(); # My::Class
Or you can specify names:
use Test2::Bundle::Extended -target => { pkg => 'Some::Package' };
pkg()->xxx; # Call 'xxx' on Some::Package
$pkg->xxx; # Same
- $CLASS
-
Package variable that contains the target class name.
- $class = CLASS()
-
Constant function that returns the target class name.
DEFER
See Test2::Tools::Defer.
BASIC
See Test2::Tools::Basic.
- ok($bool, $name)
- pass($name)
- fail($name)
- diag($message)
- note($message)
- $todo = todo($reason)
- todo $reason => sub { ... }
- skip($reason, $count)
- plan($count)
- skip_all($reason)
- done_testing()
- bail_out($reason)
COMPARE
- is($got, $want, $name)
- isnt($got, $do_not_want, $name)
- like($got, qr/match/, $name)
- unlike($got, qr/mismatch/, $name)
- $check = match(qr/pattern/)
- $check = mismatch(qr/pattern/)
- $check = validator(sub { return $bool })
- $check = hash { ... }
- $check = array { ... }
- $check = bag { ... }
- $check = object { ... }
- $check = meta { ... }
- $check = number($num)
- $check = string($str)
- $check = check_isa($class_name)
- $check = in_set(@things)
- $check = not_in_set(@things)
- $check = check_set(@things)
- $check = item($thing)
- $check = item($idx => $thing)
- $check = field($name => $val)
- $check = call($method => $expect)
- $check = call_list($method => $expect)
- $check = call_hash($method => $expect)
- $check = prop($name => $expect)
- $check = check($thing)
- $check = T()
- $check = F()
- $check = D()
- $check = DF()
- $check = E()
- $check = DNE()
- $check = FDNE()
- $check = U()
- $check = L()
- $check = exact_ref($ref)
- end()
- etc()
- filter_items { grep { ... } @_ }
- $check = event $type => ...
- @checks = fail_events $type => ...
CLASSIC COMPARE
See Test2::Tools::ClassicCompare.
SUBTEST
CLASS
See Test2::Tools::Class.
ENCODING
EXPORTS
REF
See Test2::Tools::Ref.
MOCK
See Test2::Tools::Mock.
EXCEPTION
WARNINGS
- $count = warns { ... }
- $warning = warning { ... }
- $warnings_ref = warnings { ... }
- $bool = no_warnings { ... }
SOURCE
The source code repository for Test2-Suite can be found at https://github.com/Test-More/test-more/.
MAINTAINERS
AUTHORS
COPYRIGHT
Copyright 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/