logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Test2::Bundle::More - ALMOST a drop-in replacement for Test::More.

Authors

Chad Granum <exodist@cpan.org>

Description

This bundle is intended to be a (mostly) drop-in replacement for Test::More. See "KEY DIFFERENCES FROM Test::More" for details.

Key Differences From Test::More

You cannot plan at import. THIS WILL NOT WORK: use Test2::Bundle::More tests => 5; Instead you must plan in a separate statement: use Test2::Bundle::More; plan 5; You have three subs imported for use in planning Use plan($count), skip_all($reason), or done_testing() for your planning. isa_ok accepts different arguments "isa_ok" in Test::More was: isa_ok($thing, $isa, $alt_thing_name); This was very inconsistent with tools like "can_ok($thing, @subs)". In Test2::Bundle::More, isa_ok() takes a $thing and a list of @isa. isa_ok($thing, $class1, $class2, ...); THESEFUNCTIONSANDVARIABLESHAVEBEENREMOVED $TODO See todo(). use_ok()require_ok() These are not necessary. Use "use" and "require" directly. If there is an error loading the module the test will catch the error and fail. todo_skip() Not necessary. eq_array()eq_hash()eq_set() Discouraged in Test::More. explain() This started a fight between Test developers, who may now each write their own implementations in Test2. (See explain in Test::Most vs Test::More. Hint: Test::Most wrote it first, then Test::More added it, but broke compatibility). new_ok() Not necessary.

Maintainers

Chad Granum <exodist@cpan.org>

Name

Test2::Bundle::More - ALMOST a drop-in replacement for Test::More.

Plugins

This loads Test2::Plugin::ExitSummary.

Source

The source code repository for Test2-Suite can be found at https://github.com/Test-More/Test2-Suite/.

Synopsis

use Test2::Bundle::More; ok(1, "pass"); ... done_testing;

Tools

These are from Test2::Tools::Basic. See Test2::Tools::Basic for details. ok($bool, $name) pass($name) fail($name) skip($why, $count) $todo = todo($why) diag($message) note($message) plan($count) skip_all($why) done_testing() BAIL_OUT($why) These are from Test2::Tools::ClassicCompare. See Test2::Tools::ClassicCompare for details. is($got, $want, $name) isnt($got, $donotwant, $name) like($got, qr/match/, $name) unlike($got, qr/mismatch/, $name) is_deeply($got, $want, "Deep compare") cmp_ok($got, $op, $want, $name) These are from Test2::Tools::Class. See Test2::Tools::Class for details. isa_ok($thing, @classes) can_ok($thing, @subs) This is from Test2::Tools::Subtest. It is called subtest_streamed() in that package. subtest $name => sub { ... }

See Also