This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Rename ext/Devel/DProf to ext/Devel-DProf
[perl5.git] / ext / Devel / PPPort / t / testutil.pl
1 {
2   my $__ntest;
3   my $__total;
4
5   sub plan {
6     @_ == 2 or die "usage: plan(tests => count)";
7     my $what = shift;
8     $what eq 'tests' or die "cannot plan anything but tests";
9     $__total = shift;
10     defined $__total && $__total > 0 or die "need a positive number of tests";
11     print "1..$__total\n";
12   }
13
14   sub skip {
15     my $reason = shift;
16     ++$__ntest;
17     print "ok $__ntest # skip: $reason\n"
18   }
19
20   sub ok ($;$$) {
21     local($\,$,);
22     my $ok = 0;
23     my $result = shift;
24     if (@_ == 0) {
25       $ok = $result;
26     } else {
27       $expected = shift;
28       if (!defined $expected) {
29         $ok = !defined $result;
30       } elsif (!defined $result) {
31         $ok = 0;
32       } elsif (ref($expected) eq 'Regexp') {
33         die "using regular expression objects is not backwards compatible";
34       } else {
35         $ok = $result eq $expected;
36       }
37     }
38     ++$__ntest;
39     if ($ok) {
40       print "ok $__ntest\n"
41     }
42     else {
43       print "not ok $__ntest\n"
44     }
45   }
46 }
47
48 1;