Test2::...Tooling(3)

πŸ“¦ version 1.302214, in opensuse-leap 16.0

πŸ’– Test2::Manual::Tooling πŸ’–

Okay so this is the Test2::...Tooling(3) page from User Contributed Perl Documentation β€” aka Test2::Manual::Tooling, the manual page for tool authors. Welcome to the group chat where we learn to build Test2 tools, plugins, and other components. No cap, this index is your map. πŸ—ΊοΈβœ¨


πŸŽ€ NAME πŸŽ€

Test2::Manual::Tooling β€” manual page for tool authors. That’s it, that’s the name, and it ate. πŸ’…

🌸 DESCRIPTION 🌸

This section covers writing new tools, plugins, and other Test2 components. Basically: if you wanna make tooling that slaps, start here. πŸ› οΈπŸ¦‹

🌈 TOOL TUTORIALS 🌈

🧰 FIRST TOOL

  • Test2::Manual::Tooling::FirstTool β€” intro to writing tools by cloning ok(). Iconic starter energy. πŸ‘‘

🚚 MOVING FROM Test::Builder

  • Test2::Manual::Tooling::TestBuilder β€” this section maps Test::Builder methods to Test2 concepts. If you’re moving over, this is your translator bestie. πŸ”

πŸͺ† NESTING TOOLS

  • Test2::Manual::Tooling::Nesting β€” how to call other tools from your tool. Tool-ception, but make it valid. πŸŒ€

πŸ§ͺ TOOLS WITH SUBTESTS

  • Test2::Manual::Tooling::Subtest β€” how to write tools that make use of subtests. Subtest girlies, this one’s for you. 🫢

βœ… TESTING YOUR TEST TOOLS

  • Test2::Manual::Tooling::Testing β€” how to write tests for your test tools. Test-ception, lowkey essential. πŸ§ͺπŸ’–

πŸŽ‰ PLUGIN TUTORIALS πŸŽ‰

πŸš€ TAKING ACTION WHEN A NEW TOOL STARTS

  • Test2::Manual::Tooling::Plugin::ToolStarts β€” how to add behaviors that occur when a tool starts work. Main character entrance vibes. ✨

🏁 TAKING ACTION AFTER A TOOL IS DONE

  • Test2::Manual::Tooling::Plugin::ToolCompletes β€” how to add behaviors that occur when a tool completes work. The finish-line slay. πŸŽ€

πŸ”š 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-test era. πŸŒ…

πŸšͺ TAKING ACTION JUST BEFORE EXIT

  • Test2::Manual::Tooling::Plugin::TestExit β€” how to safely add pre-exit behaviors. Pre-exit, but make it safe. πŸ›Ÿ

✍️ WRITING A SIMPLE JSONL FORMATTER ✍️

  • Test2::Manual::Tooling::Formatter β€” how to write a custom formatter, in our case a JSONL formatter. Custom formatter era, and ours is JSONL. 🧾✨

πŸ”Ž WHERE TO FIND HOOKS AND APIS πŸ”Ž

🌍 global API

Test2::API is the global API. This is primarily used by plugins that provide global behavior. Think of it as the big-picture group chat. πŸ“£

🧩 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. Hooks live here, bestie. πŸͺπŸ’œ

πŸ‘€ SEE ALSO πŸ‘€

  • Test2::Manual β€” primary index of the manual. Start here if you’re lost. πŸ—‚οΈ

πŸ“¦ SOURCE πŸ“¦

The source code repository for Test2-Manual can be found at https://github.com/Test-More/test-more/. Go snoop, but respectfully. πŸ”

🫢 MAINTAINERS 🫢

  • Chad Granum <exodist@cpan.org>

✨ AUTHORS ✨

  • Chad Granum <exodist@cpan.org>

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/


And that’s the whole page, bestie. This cutie was rendered by perl v5.42.0 on 2025-07-28, and the page itself is Test2::...Tooling(3). Periodt. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from