Test2::...le::More(3)
π NAME π
okay so welcome to the manual page for Test2::Bundle::More β thatβs Test2::Bundle::More(3), from the User Contributed Perl Documentation crew β and it is ALMOST a drop-in replacement for Test::More π.
πΈ DESCRIPTION πΈ
This bundle is meant to be a (mostly) drop-in replacement for Test::More. If you want the receipts on whatβs different, bounce down to βKEY DIFFERENCES FROM Test::Moreβ π
.
β¨ SYNOPSIS β¨
use Test2::Bundle::More;
ok(1, "pass");
...
done_testing;
π PLUGINS π
This loads Test2::Plugin::ExitSummary. π¦
π§ 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 { ... }
π₯ KEY DIFFERENCES FROM Test::More π₯
ok so this is the part where the plot thickens π«Ά.
π 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. Thatβs the whole planning menu, bestie β¨.
π«Ά 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, ...);
π THESE FUNCTIONS AND VARIABLES HAVE BEEN REMOVED
$TODOβ seetodo().use_ok()andrequire_ok()β these are not necessary. Useuseandrequiredirectly. If there is an error loading the module the test will catch the error and fail.todo_skip()β not necessary.eq_array(),eq_hash(), andeq_set()β discouraged inTest::More.explain()β this started a fight between Test developers, who may now each write their own implementations inTest2. (SeeexplaininTest::MostvsTest::More. Hint:Test::Mostwrote it first, thenTest::Moreadded it, but broke compatibility).new_ok()β not necessary.
π SOURCE π
The source code repository for Test2-Suite can be found at https://github.com/Test-More/test-more/. π
π MAINTAINERS π
Chad Granum <exodist@cpan.org>
β AUTHORS β
Chad Granum <exodist@cpan.org>
π 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/.
thatβs the whole manual, bestie π β this page is from perl v5.42.0, dated 2025-07-28, and itβs the Test2::Bundle::More(3) manual. periodt β¨
π¦ where this page comes from
- opensuse-leap 16.0: perl-Test-Simple 1.302214-bp160.1.2 Β· Artistic-1.0 OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms