Changes for version 1.302204 - 2024-09-14
- Add pending diagnostics functionality
- Show warnings/exceptions for no_warnings() and lives()
Documentation
A tutorial about writing really basic tests
Transition notes when upgrading to Test2
Modules
Backend for building test libraries
Test::Builder subclass of Test2::Formatter::TAP
A copy of IO::Scalar for Test::Builder
Base class for test modules
test testsuites that have been built with Test::Builder
turn on colour in Test::Builder::Tester
Test::Builder subclass of Test2::Event::Diag
yet another framework for writing test scripts
Basic utilities for writing tests.
Ease testing test modules built with Test::Builder
Help testing test modules built with Test::Builder
Help testing test modules built with Test::Builder
Alternative to Test::More::use_ok
Framework for writing test tools that all work together.
Primary interface for writing Test2 based testing tools.
What breaks at what version
Object to represent a testing context.
Object used by Test2::API under the hood
Representation of a list of events.
Representation of an event for use in testing other test tools.
Hub used by InterceptResult.
Encapsulation of the algorithm that squashes diags into assertions.
Object to manage a stack of Test2::Hub instances.
Object representing an async subtest.
Event to attach a subtest to the parent.
Event to detach a subtest from the parent.
Hub used by async subtests.
Documentation for bundles.
Old name for Test2::V0
ALMOST a drop-in replacement for Test::More.
ALMOST a drop-in replacement for Test::Simple.
Test2 extension for writing deep comparison tools.
Internal representation of an array comparison.
Internal representation of a bag comparison.
Base class for comparison classes.
Compare two values as booleans
Custom field check for comparisons.
Ref comparison
Representation of differences between nested data structures.
Event specific Object subclass.
Meta class for events in deep comparisons
Compare two values as numbers with tolerance.
Representation of a hash in a deep comparison.
Check if the value is an instance of the class.
Check library for meta-checks
Poor mans 'role' for compare objects that can be negated.
Compare two values as numbers
Representation of an object during deep comparison.
Internal representation of an ordered subset.
Use a pattern to validate values in a deep comparison.
Ref comparison
Regex direct comparison
Representation of a Scalar Ref in deep comparisons
Allows a field to be matched against a set of checks.
Compare two values as strings
Check that something is undefined
Placeholder check.
Base class for events
Bailout!
Diag event type
Set the encoding for the output stream
Exception event
Event for a simple failed assertion
Generic event type.
Note event type
Ok event type
Event for a simple passing assertion
The event of a plan
Skip event type
Event for subtest types
Event for TAP version.
Second generation event.
Tell all procs/threads it is time to be done
Base class for all event facets.
Facet with event details.
Facet for assertion amnesty.
Facet representing an assertion.
Facet for hub actions and behaviors.
Facet for errors that need to be shown.
Facet for the hubs an event passes through.
Facet for information a developer might care about.
Intermediary representation of a table.
Facet for meta-data
Facet for events contains other events
Facet for setting the plan
Facet that dictates how to render an event.
Debug information for events
Namespace for formatters.
Standard TAP formatter
The conduit through which all events flow.
Hub used by interceptor to grab results.
Exception class used by Test2::Hub::Interceptor
Hub used by subtests
Turn on IPC for threading or forking support.
Base class for Test2 IPC drivers.
Temp dir + Files concurrency model.
Documentation hub for Test2 and Test2-Suite.
The hub for documentation of the inner workings of Test2 components.
Internals documentation for the API.
Internals documentation for the Context objects.
Overview of Test2 from load to finish.
The internals of events
Internals documentation for the hub stack, and hubs.
Manual for the IPC system.
Overview of utilities for Test2.
Documentation for Concurrency support.
How to contribute to the Test2 project.
Hub for documentation about writing tests with Test2.
Introduction to testing with Test2.
How to migrate existing tests from Test::More to Test2.
The many ways to set a plan.
Tutorial for marking tests as TODO.
Manual page for tool authors.
Write your first tool with Test2.
How to write a custom formatter, in our case a JSONL formatter.
Tutorial for using other tools within your own.
How to safely add pre-exit behaviors.
Run code when the test file is finished, or when done_testing is called.
How to add behaviors that occur when a tool completes work.
How to add behaviors that occur when a tool starts work.
How to implement a tool that makes use of subtests.
This section maps Test::Builder methods to Test2 concepts.
Tutorial on how to test your testing tools.
Module for managing mocked classes and instances.
Documentation for plugins
Automatically bail out of testing on the first test failure.
Automatically die on the first test failure.
Add extra diagnostics on failure at the end of the test.
Control the random seed for more controlled test environments.
Output timing data at the end of the test.
Test2 plugin to test with utf8.
Base class and documentation for skip-unless type test packages.
Only run a test when the AUTHOR_TESTING environment variable is set.
Only run a test when the AUTOMATED_TESTING environment variable is set.
Only run a test when a specific environment variable is set.
Only run a test when the EXTENDED_TESTING environment variable is set.
Skip a test file unless the system supports forking
Skip tests if certain packages are not installed, or insufficient versions.
Only run a test when the NONINTERACTIVE_TESTING environment variable is set.
Skip the test unless the necessary version of Perl is installed.
Skip a test file unless the system supports true forking
Only run a test when the RELEASE_TESTING environment variable is set.
Skip a test file unless the system supports threading
Distribution with a rich set of tools built upon the Test2 framework.
TODO extension for Test2.
Documentation for Tools.
Tools for writing async subtests.
Test2 implementation of the basic testing tools.
Test2 implementation of the tools for testing classes.
Classic (Test::More style) comparison tools.
Tools for comparing deep data structures.
Write tests that get executed at a later time
Tools for managing the encoding of Test2 based tests.
Tools for generating test events.
Test2 based tools for checking exceptions
Tools for validating exporters.
Tool for generating a populated temp directory.
Temporarily intercept all events without adding a scope level.
Class/Instance mocking for Test2.
Tools for validating references.
assert reference counts on objects
RSPEC implementation on top of Test2::Workflow
Tools for writing subtests
Alias the testing target package.
Tools to help you test other testing tools.
Tiny set of tools for unfortunate souls who cannot use Test2::Suite.
Tools to verify warnings.
Tools used by Test2 and friends.
Allow third party tools to safely attach meta-data to your instances.
Convert facet data to the legacy event API.
Object used to temporarily intercept all events.
Inline copy of Scope::Guard
Build hash based classes.
Inline copy of Importer.
Tools for inspecting or manipulating references.
Utilities for manipulating stashes and globs.
Tools for inspecting and manipulating subs.
Format a header and rows into a table
Break up lines for use in tables.
Format timing/benchmark information.
Legacy wrapper fro Test2::EventFacet::Trace.
0Th edition of the Test2 recommended bundle.
A test workflow is a way of structuring tests using composable units.
Base class for all workflow blocks.
Represents a build in progress.
Runs the workflows.
Encapsulation of a Task
Encapsulation of an action.
Encapsulation of a group (describe).
Alternative to Test::More::use_ok
Provides
in lib/Test2/API/InterceptResult/Facet.pm
in lib/Test2/AsyncSubtest/Formatter.pm
in lib/Test2/Util/Table/Cell.pm
in lib/Test2/Util/Term.pm
in lib/Test/Builder/Tester.pm
in lib/Test/Tester/Delegate.pm