print "1..25\n";
print "# Basic\n";
# A function that should only be called once.
11;
}
}
#
print (($c1 == 11) ? "ok 1\n" : "not ok 1\n");
print (($c2 == 11) ? "ok 2\n" : "not ok 2\n");
print $FAIL ?
"not ok 3\n" :
"ok 3\n";
# Was it really memoized?
print (($c1 == 12) ? "ok 4\n" : "not ok 4\n"); print (($c2 == 12) ? "ok 5\n" : "not ok 5\n"); print $FAIL ? "not ok 6\n" : "ok 6\n"; # Was it really memoized?
print (($c1 == 13) ? "ok 7\n" : "not ok 7\n"); print (($c2 == 13) ? "ok 8\n" : "not ok 8\n"); print $FAIL ? "not ok 9\n" : "ok 9\n"; # Was it really memoized? $c3 = &$fm(); # Call memoized version through returned ref print (($c3 == 13) ? "ok 10\n" : "not ok 10\n"); print $FAIL ? "not ok 11\n" : "ok 11\n"; # Was it really memoized? $c4 = &$f(); # Call original version again print (($c4 == 13) ? "ok 12\n" : "not ok 12\n"); print $FAIL ? "ok 13\n" : "not ok 13\n"; # Did we get the original?
print "# Fibonacci\n";
my $n = shift;
return $n if $n < 2;
}
my $n = shift;
return $n if $n < 2;
}
$n = 13;
for ($i=0; $i<3; $i++) {
for ($j=$i+1; $j<3; $j++) {
$n++;
print ((@{$arrays[$i]} == @{$arrays[$j]}) ? "ok $n\n" : "not ok $n\n"); $n++;
for ($k=0; $k < @{$arrays[$i]}; $k++) { }
print "ok $n\n";
}
}
print "# Normalizers\n";
return '';
}
return shift;
}
return shift;
}
return shift;
}
$n++;
print (("@f1r" eq "1 2 3 4 5 6 7 8 9 10") ? "ok $n\n" : "not ok $n\n"); $n++;
print (("@f2r" eq "1 1 1 1 1 1 1 1 1 1") ? "ok $n\n" : "not ok $n\n"); $n++;
print (("@f3r" eq "1 1 1 1 1 1 1 1 1 1") ? "ok $n\n" : "not ok $n\n");
print "# INSTALL => undef option.\n";
{ my $i = 1;
}
@u1r = (&u1, &u1, &u1 ); # Did *not* clobber &u1 $n++;
print (("@umr" eq "1 1 1") ? "ok $n\n" : "not ok $n\n"); # Increment once $n++;
print (("@u1r" eq "2 3 4") ? "ok $n\n" : "not ok $n\n"); # Increment thrice $n++;
print ((defined &{"undef"}) ? "not ok $n\n" : "ok $n\n"); # Just in case
print "# $n tests in all.\n";