Test2::Plugin(3p) | Perl Programmers Reference Guide | Test2::Plugin(3p)

# NAME

Test2::Plugin - Documentation for plugins

# DESCRIPTION

Plugins are packages that cause behavior changes, or other side effects for the test file that loads them. They should not export any functions, or provide any tools. Plugins should be distinct units of functionality.

If you wish to combine behavior changes with tools then you should write a Plugin, a Tools module, and a bundle that loads them both.

# FAQ

Should I subclass Test2::Plugin?
  No. Currently this class is empty. Eventually we may want to add behavior, in which case we do not want anyone to already be subclassing it.

# HOW DO I WRITE A PLUGIN?

Writing a plugin is not as simple as writing an Test2::Bundle, or writing Test2::Tools. Plugins alter behavior, or cause desirable side-effects. To accomplish this you typically need a custom import() method that calls one or more functions provided by the Test2::API package.

If you want to write a plugin you should look at existing plugins, as well as the Test2::API and Test2::Hub documentation. There is no formula for a Plugin, they are generally unique, however consistent rules are that they should not load other plugins, or export any functions.

# SOURCE

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

# MAINTAINERS

Chad Granum <exodist@cpan.org>

# AUTHORS

Chad Granum <exodist@cpan.org>

# COPYRIGHT

Copyright 2018 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/

2025-01-28 | perl v5.40.1