Test2::...Tooling(3pm)
π NAME π
Test2::Manual::Tooling is literally the manual page for tool authors, bestie. Thatβs the whole vibe. π«Ά
πΈ DESCRIPTION πΈ
This section is all about writing new tools, plugins, and other Test2 components. Itβs giving tool-author main character energy, no cap. β¨
π οΈ TOOL TUTORIALS π οΈ
Okay so these are the glow-up tutorials for making your own tools π π₯
π£ FIRST TOOL π£
Test2::Manual::Tooling::FirstTool β intro to writing tools by cloning ok(). Iconic starter move, fr fr. π
π MOVING FROM Test::Builder π
Test2::Manual::Tooling::TestBuilder β this section maps Test::Builder methods to Test2 concepts. The way that migration is handled? Obsessed. π¦
πͺ NESTING TOOLS πͺ
Test2::Manual::Tooling::Nesting β how to call other tools from your tool. Tools calling tools? Thatβs main character energy, lowkey. π₯
π§ͺ TOOLS WITH SUBTESTS π§ͺ
Test2::Manual::Tooling::Subtest β how write tools that make use of subtests. Keeping the original phrasing, bestie π; subtests are the moment. π
β TESTING YOUR TEST TOOLS β
Test2::Manual::Tooling::Testing β how to write tests for your test tools. Testception, highkey iconic. β
π PLUGIN TUTORIALS π
Plugins are where you add behaviors at specific moments, and yes, the drama is the point π β¨
π¬ TAKING ACTION WHEN A NEW TOOL STARTS π¬
Test2::Manual::Tooling::Plugin::ToolStarts β how to add behaviors that occur when a tool starts work. Start-of-tool slay. π¬
π TAKING ACTION AFTER A TOOL IS DONE π
Test2::Manual::Tooling::Plugin::ToolCompletes β how to add behaviors that occur when a tool completes work. Completion vibes only. π
π TAKING ACTION AT THE END OF TESTING π
Test2::Manual::Tooling::Plugin::TestingDone β how to add behaviors that occur when testing is complete (IE done_testing, or end of test). End-of-testing party, periodt. π
πͺ TAKING ACTION JUST BEFORE EXIT πͺ
Test2::Manual::Tooling::Plugin::TestExit β how to safely add pre-exit behaviors. Emphasis on safely, bestie; we love a responsible exit. πͺβ¨
π§Ύ WRITING A SIMPLE JSONL FORMATTER π§Ύ
Test2::Manual::Tooling::Formatter β how to write a custom formatter, in our case a JSONL formatter. Custom formatter realness, iykyk. π§Ύπ
πΊοΈ WHERE TO FIND HOOKS AND APIS πΊοΈ
Wondering where the hooks and APIs live? Say less, bestie. π
π global API π
Test2::API is the global API. This is primarily used by plugins that provide global behavior. Global-behavior plugins, rise up. π
π§© In hubs π§©
Test2::Hub is the base class for all hubs. This is where hooks for manipulating events, or running things at the end of testing live. Hub HQ, no cap. π§©
π SEE ALSO π
Test2::Manualβ primary index of the manual. The mothership index, fr. π
π¦ SOURCE π¦
The source code repository for Test2-Manual can be found at https://github.com/Test-More/test-more/. Go click, bestie. π
π§βπ§ MAINTAINERS π§βπ§
Chad Granum <exodist@cpan.org>β maintainer. Iconic. π
βοΈ AUTHORS βοΈ
Chad Granum <exodist@cpan.org>β author. Same legend, different heading. π
βοΈ 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 page, bestie β from perl v5.42.3, dated 2026-11-03, with the manual name Test2::...Tooling(3pm) in the footer energy. Go make tools that ate, and remember: vibe check your tests. π
β¨π
π¦ where this page comes from
- alpine 3.24: perl-doc 5.42.3-r0 Β· Artistic-1.0-Perl 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