NAME

Devel::Cover::Test - Internal module for testing

VERSION

version 1.39

METHODS

new

my $test = Devel::Cover::Test->new($test, criteria => $string)

Constructor.

"criteria" parameter (optional, defaults to "statement branch condition subroutine") is a space separated list of tokens. Supported tokens are "statement", "branch", "condition", "subroutine" and "pod".

More optional parameters are supported. Refer to "get_params" sub.

shell_quote

my $quoted_item = shell_quote($item)

Returns properly quoted item to cope with embedded spaces.

perl

my $perl = $self->perl

Returns absolute path to Perl interpreter with proper -I options (blib-wise).

test_command

my $command = $self->test_command

Returns test command, made of:

absolute path to Perl interpreter
Devel::Cover -M option (if applicable)
test file
test file parameters (if applicable)

cover_command

my $command = $self->cover_command

Returns test command, made of:

absolute path to Perl interpreter
absolute path to cover script
cover parameters

test_file

my $file = $self->test_file

Returns absolute path to test file.

test_file_parameters

my $parameters = $self->test_file_parameters

Accessor to test_file_parameters property.

get_params

Populates the keys criteria, select, test_parameters, db_name, cover_db, cover_parameters and skip using the test_file if available otherwise sets the default.

cover_gold

my ($base, $v) = $self->cover_gold;

Returns the absolute path of the base to the golden file and the suffix version number.

$base comes from the name of the test and $v will be $] from the earliest perl version for which the golden results should be the same as for the current $]

$v will be overridden if installed libraries' versions dictate; for instance, if Math::BigInt is at version > 1.999806, then the version of Perl will be overridden as though it is 5.26.

run_command

$self->run_command($command)

Runs command, most likely obtained from "test_command" sub.

BUGS

Huh?

LICENCE

Copyright 2001-2022, Paul Johnson (paul@pjcj.net)

This software is free. It is licensed under the same terms as Perl itself.

The latest version of this software should be available from my homepage: http://www.pjcj.net