(GPL+ or Artistic) and CC0 and Public Domain
(GPL-1.0-or-later or Artistic-1.0-perl) and MIT and UCD
This package provides the bulk of the core testing facilities. For more information, see perldoc for Test::Simple, Test::More, etc. This package is the CPAN component of the dual-lifed core package Test-Simple.
acquired package info from repodata DB: repodata/f1f85c23079e7764ad00378a9fc5d660b89a03657290e75426caf7be5b7da462-primary.sqlite.bz2
Implements default import method for modules
The Exporter module implements an import method which allows a module to export functions and variables to its users' name spaces. Many modules use Exporter rather than implementing their own import method because Exporter provides a highly flexible interface, with an implementation optimized for the common case.
This package is the shared library for perl.
The Carp routines are useful in your own modules because they act like die() or warn(), but with a message which is more likely to be useful to a user of your module. In the case of cluck, confess, and longmess that context is a summary of every call in the call-stack. For a shorter message you can use carp or croak which report the error as being from where your module was called. There is no guarantee that that is where the error was, but it is a good educated guess.
If you've ever tried to use Test::NoWarnings to confirm there are no warnings generated by your tests,combined with the convenience of done_testing to not have to declare a test count, you'll have discovered that these two features do not play well together, as the test count will be calculated before the warnings test is run, resulting in a TAP error. (See examples/test_nowarnings.pl in this distribution for a demonstration.) This module is intended to be used as a drop-in replacement for Test::NoWarnings: it also adds an extra test, but runs this test before done_testing calculates the test count, rather than after. It does this by hooking into done_testing as well as via an END block. You can declare a plan, or not, and things will still Just Work. It is actually equivalent to: use Test::NoWarnings 1.04 ':early'; as warnings are still printed normally as they occur. You are safe, and enthusiastically encouraged, to perform a global search-replace of the above with use Test::Warnings; whether or not your tests have a plan. It can also be used as a replacement for Test::Warn, if you wish to test the content of expected warnings; read on to find out how.
Establish an ISA relationship with base classes at compile time
Allows you to both load one or more modules, while setting up inheritance from those modules at the same time.