TAP
NAME
TAP
DESCRIPTION
An asynchronous TAP framework written in Raku.
SYNOPSIS
use TAP;
my $harness = TAP::Harness.new(|%args);
$harness.run(@tests);METHODS
Class Methods
new
my %args = jobs => 1, err => 'ignore';
my $harness = TAP::Harness.new( |%args );The constructor returns a new TAP::Harness object.
It accepts an optional hash whose allowed keys are:
volumeDefault value:
NormalPossible values:
SilentReallyQuietQuietNormalVerbosejobsThe maximum number of parallel tests to run.
Default value:
1Possible values: An
InttimerAppend run time for each test to output.
Default value:
FalsePossible values:
TrueFalseerrError reporting configuration.
Default value:
stderrPossible values:
stderrignoremergeSupplyIO::HandleValue Definition stderrDirect the test's $*ERRto the harness'$*ERRignoreIgnore the test scripts' $*ERRmergeMerge the test scripts' $*ERRinto their$*OUTSupplyDirect the test's $*ERRto aSupplyIO::HandleDirect the test's $*ERRto anIO::Handleignore-exitIf set to
Truewill instructTAP::Parserto ignore exit and wait for status from test scripts.Default value:
FalsePossible values:
TrueFalsetrapAttempt to print summary information if run is interrupted by SIGINT (Ctrl-C).
Default value:
FalsePossible values:
TrueFalsehandlersDefault value:
TAP::Harness::SourceHandler::RakuPossible values:
TAP::Harness::SourceHandler::RakuTAP::Harness::SourceHandler::ExecLanguage Handler Raku TAP::Harness::SourceHandler::Raku.newPerl 5 TAP::Harness::SourceHandler::Exec.new('perl')Ruby TAP::Harness::SourceHandler::Exec.new('ruby')Python TAP::Harness::SourceHandler::Exec.new('python')
Instance Methods
run
$harness.run(@tests);Accepts an array of @tests to be run. This should generally be the names of test files.
TODO
These features are currently not implemented but are considered desirable:
Rule based parallel scheduling
Source Handlers other than
::RakuBetter documentation
LICENSE
You can use and distribute this module under the terms of the The Artistic License 2.0. See the LICENSE file included in this distribution for complete details.