|
Packit |
7d6a7d |
{
|
|
Packit |
7d6a7d |
my $__ntest;
|
|
Packit |
7d6a7d |
my $__total;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
sub plan {
|
|
Packit |
7d6a7d |
@_ == 2 or die "usage: plan(tests => count)";
|
|
Packit |
7d6a7d |
my $what = shift;
|
|
Packit |
7d6a7d |
$what eq 'tests' or die "cannot plan anything but tests";
|
|
Packit |
7d6a7d |
$__total = shift;
|
|
Packit |
7d6a7d |
defined $__total && $__total > 0 or die "need a positive number of tests";
|
|
Packit |
7d6a7d |
print "1..$__total\n";
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
sub skip {
|
|
Packit |
7d6a7d |
my $reason = shift;
|
|
Packit |
7d6a7d |
++$__ntest;
|
|
Packit |
7d6a7d |
print "ok $__ntest # skip: $reason\n"
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
sub ok ($;$$) {
|
|
Packit |
7d6a7d |
local($\,$,);
|
|
Packit |
7d6a7d |
my $ok = 0;
|
|
Packit |
7d6a7d |
my $result = shift;
|
|
Packit |
7d6a7d |
if (@_ == 0) {
|
|
Packit |
7d6a7d |
$ok = $result;
|
|
Packit |
7d6a7d |
} else {
|
|
Packit |
7d6a7d |
$expected = shift;
|
|
Packit |
7d6a7d |
if (!defined $expected) {
|
|
Packit |
7d6a7d |
$ok = !defined $result;
|
|
Packit |
7d6a7d |
} elsif (!defined $result) {
|
|
Packit |
7d6a7d |
$ok = 0;
|
|
Packit |
7d6a7d |
} elsif (ref($expected) eq 'Regexp') {
|
|
Packit |
7d6a7d |
die "using regular expression objects is not backwards compatible";
|
|
Packit |
7d6a7d |
} else {
|
|
Packit |
7d6a7d |
$ok = $result eq $expected;
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
++$__ntest;
|
|
Packit |
7d6a7d |
if ($ok) {
|
|
Packit |
7d6a7d |
print "ok $__ntest\n"
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
else {
|
|
Packit |
7d6a7d |
print "not ok $__ntest\n"
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
1;
|