I've switched over to using is() for anything that wasn't an '==' test' 
on funky
numeric values;  there are a lot of those in (e.g.) bop.t, and I didn't 
want to
change the fundamental nature of the tests. I've also gotten my diff format
right this time. :)

So here are:
 - avhv.t
 - bop.t
 - chars.t
 - closure.t (only a short patch; I wasn't up to rewriting all of Tom's
              code. It does remove the print "not " stuff, though)
 - concat.t
 - defins.t
 - delete.t
 - die.t (this looked nasty to switch to Test::More. so I just fixed the 
prints)
 - die_exit.t (similar to die.t)

Still working my way through t/op; hope to have more later today.

 --- Joe M.
--- ../op/avhv.t        Mon Apr 23 18:43:40 2001
+++ avhv.t      Thu Aug 30 10:30:26 2001
@@ -17,7 +17,9 @@
 
 package main;
 
-print "1..29\n";
+use Test::More tests=>29;
+
+my $test = 1;
 
 $sch = {
     'abc' => 1,
@@ -36,7 +38,7 @@
 @keys = keys %$a;
 @values = values %$a;
 
-if ($#keys == 2 && $#values == 2) {print "ok 1\n";} else {print "not ok 1\n";}
+ok($#keys == 2 && $#values == 2, "key/value count");
 
 $i = 0;                # stop -w complaints
 
@@ -47,7 +49,7 @@
     }
 }
 
-if ($i == 3) {print "ok 2\n";} else {print "not ok 2\n";}
+is($i, 3, "each()");
 
 # quick check with tied array
 tie @fake, 'Tie::StdArray';
@@ -55,7 +57,7 @@
 $a->[0] = $sch;
 
 $a->{'abc'} = 'ABC';
-if ($a->{'abc'} eq 'ABC') {print "ok 3\n";} else {print "not ok 3\n";}
+is($a->{'abc'}, 'ABC',           "Tie::StdArray");
 
 # quick check with tied array
 tie @fake, 'Tie::BasicArray';
@@ -63,7 +65,7 @@
 $a->[0] = $sch;
 
 $a->{'abc'} = 'ABC';
-if ($a->{'abc'} eq 'ABC') {print "ok 4\n";} else {print "not ok 4\n";}
+is($a->{'abc'}, 'ABC',           "Tie::BasicArray");
 
 # quick check with tied array & tied hash
 require Tie::Hash;
@@ -72,113 +74,96 @@
 $a->[0] = \%fake;
 
 $a->{'abc'} = 'ABC';
-if ($a->{'abc'} eq 'ABC') {print "ok 5\n";} else {print "not ok 5\n";}
+is($a->{'abc'}, 'ABC',           "Tie::StdHash failure");
 
 # hash slice
 my $slice = join('', 'x',@$a{'abc','def'},'x');
-print "not " if $slice ne 'xABCx';
-print "ok 6\n";
+is($slice, 'xABCx',              "hash slice");
 
 # evaluation in scalar context
 my $avhv = [{}];
-print "not " if %$avhv;
-print "ok 7\n";
+ok(!%$avhv,                      "empty scalar context");
+
 
 push @$avhv, "a";
-print "not " if %$avhv;
-print "ok 8\n";
+ok(!%$avhv,                      "single scalar context");
 
 $avhv = [];
 eval { $a = %$avhv };
-print "not " unless $@ and $@ =~ /^Can't coerce array into hash/;
-print "ok 9\n";
+ok(($@ and $@ =~ /^Can't coerce array into hash/),"hash coercion");
 
 $avhv = [{foo=>1, bar=>2}];
-print "not " unless %$avhv =~ m,^\d+/\d+,;
-print "ok 10\n";
+ok(%$avhv =~ m{^\d+/\d+},        "hash in scalar context");
 
 # check if defelem magic works
 sub f {
-    print "not " unless $_[0] eq 'a';
+    my $failed = 0;
+    ok($_[0] eq 'a',             '@_ ok in defelem check') 
+         or $failed = 1;
     $_[0] = 'b';
-    print "ok 11\n";
 }
 $a = [{key => 1}, 'a'];
-f($a->{key});
-print "not " unless $a->[1] eq 'b';
-print "ok 12\n";
+ok(f($a->{key}) && $a->[1] eq 'b', 
+                                 "defelem magic");
 
 # check if exists() is behaving properly
 $avhv = [{foo=>1,bar=>2,pants=>3}];
-print "not " if exists $avhv->{bar};
-print "ok 13\n";
+ok(!exists $avhv->{bar},         "exists() with subhash");
 
 $avhv->{pants} = undef;
-print "not " unless exists $avhv->{pants};
-print "ok 14\n";
-print "not " if exists $avhv->{bar};
-print "ok 15\n";
+ok(exists $avhv->{pants},        "exists() with undef assignment");
+ok(!exists $avhv->{bar},         "exists() after undef assignment");
 
 $avhv->{bar} = 10;
-print "not " unless exists $avhv->{bar} and $avhv->{bar} == 10;
-print "ok 16\n";
+ok((exists $avhv->{bar} and $avhv->{bar} == 10),
+                                 "hash reassignment");
 
 $v = delete $avhv->{bar};
-print "not " unless $v == 10;
-print "ok 17\n";
-
-print "not " if exists $avhv->{bar};
-print "ok 18\n";
+ok($v == 10,                     "delete() value check");
+ok(!exists $avhv->{bar},         "exists() after delete()");
 
 $avhv->{foo} = 'xxx';
 $avhv->{bar} = 'yyy';
 $avhv->{pants} = 'zzz';
 @x = delete @{$avhv}{'foo','pants'};
-print "# @x\nnot " unless "@x" eq "xxx zzz";
-print "ok 19\n";
-
-print "not " unless "$avhv->{bar}" eq "yyy";
-print "ok 20\n";
+ok("@x" eq "xxx zzz",            "slice delete");
+ok("$avhv->{bar}" eq "yyy",      "check after slice delete");
 
 # hash assignment
 %$avhv = ();
-print "not " unless ref($avhv->[0]) eq 'HASH';
-print "ok 21\n";
+ok(ref($avhv->[0]) eq 'HASH',    "hash assignment");
 
 %hv = %$avhv;
-print "not " if grep defined, values %hv;
-print "ok 22\n";
-print "not " if grep ref, keys %hv;
-print "ok 23\n";
+ok(!grep(defined, values %hv),   "grep defined(), empty hash");
+ok(!grep(ref,     keys   %hv),   "grep ref(), empty hash");
 
 %$avhv = (foo => 29, pants => 2, bar => 0);
-print "not " unless "@$avhv[1..3]" eq '29 0 2';
-print "ok 24\n";
+ok("@$avhv[1..3]" eq '29 0 2',   "array deref");
 
 my $extra;
 my @extra;
 ($extra, %$avhv) = ("moo", foo => 42, pants => 53, bar => "HIKE!");
-print "not " unless "@$avhv[1..3]" eq '42 HIKE! 53' and $extra eq 'moo';
-print "ok 25\n";
+ok(("@$avhv[1..3]" eq '42 HIKE! 53' and $extra eq 'moo'),
+                                 "proper distribution, list assign");
 
 %$avhv = ();
 (%$avhv, $extra) = (foo => 42, pants => 53, bar => "HIKE!");
-print "not " unless "@$avhv[1..3]" eq '42 HIKE! 53' and !defined $extra;
-print "ok 26\n";
+ok(("@$avhv[1..3]" eq '42 HIKE! 53' and !defined $extra),
+                                 "undef assign from list to scalar");
 
 @extra = qw(whatever and stuff);
 %$avhv = ();
 (%$avhv, @extra) = (foo => 42, pants => 53, bar => "HIKE!");
-print "not " unless "@$avhv[1..3]" eq '42 HIKE! 53' and @extra == 0;
-print "ok 27\n";
+ok(("@$avhv[1..3]" eq '42 HIKE! 53' and @extra == 0),
+                                 "undef assign from list to array");
 
 %$avhv = ();
 (@extra, %$avhv) = (foo => 42, pants => 53, bar => "HIKE!");
-print "not " unless ref $avhv->[0] eq 'HASH' and @extra == 6;
-print "ok 28\n";
+ok((ref $avhv->[0] eq 'HASH' and @extra == 6),
+                                 "undef assign from list to hash");
 
 # Check hash slices (BUG ID 20010423.002)
 $avhv = [{foo=>1, bar=>2}];
 @$avhv{"foo", "bar"} = (42, 53);
-print "not " unless $avhv->{foo} == 42 && $avhv->{bar} == 53;
-print "ok 29\n";
+ok($avhv->{foo} == 42 && $avhv->{bar} == 53, 
+                                 "hash slice assign from list");
--- ../op/bop.t Thu Mar 29 09:21:18 2001
+++ bop.t       Thu Aug 30 10:34:17 2001
@@ -9,91 +9,98 @@
     @INC = '../lib';
 }
 
-print "1..44\n";
+use Test::More tests=>44;
 
 # numerics
-print ((0xdead & 0xbeef) == 0x9ead ? "ok 1\n" : "not ok 1\n");
-print ((0xdead | 0xbeef) == 0xfeef ? "ok 2\n" : "not ok 2\n");
-print ((0xdead ^ 0xbeef) == 0x6042 ? "ok 3\n" : "not ok 3\n");
-print ((~0xdead & 0xbeef) == 0x2042 ? "ok 4\n" : "not ok 4\n");
+ok( (0xdead & 0xbeef) == 0x9ead,   "&");
+ok( (0xdead | 0xbeef) == 0xfeef,   "|");
+
+ok( (0xdead ^ 0xbeef)  == 0x6042,  "^");
+ok( (~0xdead & 0xbeef) == 0x2042,  "~");
+
 
 # shifts
-print ((257 << 7) == 32896 ? "ok 5\n" : "not ok 5\n");
-print ((33023 >> 7) == 257 ? "ok 6\n" : "not ok 6\n");
+ok((257 << 7) == 32896, "<<");
+ok((33023 >> 7) == 257, ">>");
 
 # signed vs. unsigned
-print ((~0 > 0 && do { use integer; ~0 } == -1)
-       ? "ok 7\n" : "not ok 7\n");
+ok((~0 > 0 && do { use integer; ~0 } == -1), "~0, signed");
 
 my $bits = 0;
 for (my $i = ~0; $i; $i >>= 1) { ++$bits; }
 my $cusp = 1 << ($bits - 1);
 
-print ((($cusp & -1) > 0 && do { use integer; $cusp & -1 } < 0)
-       ? "ok 8\n" : "not ok 8\n");
-print ((($cusp | 1) > 0 && do { use integer; $cusp | 1 } < 0)
-       ? "ok 9\n" : "not ok 9\n");
-print ((($cusp ^ 1) > 0 && do { use integer; $cusp ^ 1 } < 0)
-       ? "ok 10\n" : "not ok 10\n");
-print (((1 << ($bits - 1)) == $cusp &&
-       do { use integer; 1 << ($bits - 1) } == -$cusp)
-       ? "ok 11\n" : "not ok 11\n");
-print ((($cusp >> 1) == ($cusp / 2) &&
-       do { use integer; abs($cusp >> 1) } == ($cusp / 2))
-       ? "ok 12\n" : "not ok 12\n");
+ok((($cusp & -1) > 0 && do { use integer; $cusp & -1 } < 0), "&, signed");
+ok((($cusp | 1) > 0  && do { use integer; $cusp | 1 } < 0),  "|, signed");
+ok((($cusp ^ 1) > 0  && do { use integer; $cusp ^ 1 } < 0),  "^, signed");
+ok(((1 << ($bits - 1)) == $cusp &&
+       do { use integer; 1 << ($bits - 1) } == -$cusp),     "<<, signed");
+ok((($cusp >> 1) == ($cusp / 2) &&
+       do { use integer; abs($cusp >> 1) } == ($cusp / 2)),  ">>, signed");
 
 $Aaz = chr(ord("A") & ord("z"));
 $Aoz = chr(ord("A") | ord("z"));
 $Axz = chr(ord("A") ^ ord("z"));
 
 # short strings
-print (("AAAAA" & "zzzzz") eq ($Aaz x 5) ? "ok 13\n" : "not ok 13\n");
-print (("AAAAA" | "zzzzz") eq ($Aoz x 5) ? "ok 14\n" : "not ok 14\n");
-print (("AAAAA" ^ "zzzzz") eq ($Axz x 5) ? "ok 15\n" : "not ok 15\n");
+ok(("AAAAA" & "zzzzz") eq ($Aaz x 5), "&, short strings");
+ok(("AAAAA" | "zzzzz") eq ($Aoz x 5), "|, short strings");
+ok(("AAAAA" ^ "zzzzz") eq ($Axz x 5), "^, short strings");
 
 # long strings
 $foo = "A" x 150;
 $bar = "z" x 75;
 $zap = "A" x 75;
 # & truncates
-print (($foo & $bar) eq ($Aaz x 75 ) ? "ok 16\n" : "not ok 16\n");
+ok(($foo & $bar) eq ($Aaz x 75 ),       "long strings - & truncation");
 # | does not truncate
-print (($foo | $bar) eq ($Aoz x 75 . $zap) ? "ok 17\n" : "not ok 17\n");
+ok(($foo | $bar) eq ($Aoz x 75 . $zap), "long strings, | no truncation");
 # ^ does not truncate
-print (($foo ^ $bar) eq ($Axz x 75 . $zap) ? "ok 18\n" : "not ok 18\n");
+ok(($foo ^ $bar) eq ($Axz x 75 . $zap), "long strings, ^ no truncation");
 
 #
-print "ok \xFF\xFF\n" & "ok 19\n";
-print "ok 20\n" | "ok \0\0\n";
-print "o\000 \0001\000" ^ "\000k\0002\000\n";
+ok(("ok \xFF\xFF\n" & "ok 19\n") eq "ok 19\n", '& \xFF');
+ok(("ok \x00\x00\n" | "ok 20\n") eq "ok 20\n", '| \x00');
+
+ok(("o\000 \0001\000" ^ "\000k\0002\000\n") eq "ok 21\n", "^ crossed octals");
 
 #
-print "ok \x{FF}\x{FF}\n" & "ok 22\n";
-print "ok 23\n" | "ok \x{0}\x{0}\n";
-print "o\x{0} \x{0}4\x{0}" ^ "\x{0}k\x{0}2\x{0}\n";
+ok(("ok \x{FF}\x{FF}\n" & "ok 22\n") eq "ok 22\n", '& \x{FF}');
+ok(("ok 23\n" | "ok \x{0}\x{0}\n")   eq "ok 23\n", '| \x{0}');
+
+ok(("o\x{0} \x{0}4\x{0}" ^ "\x{0}k\x{0}2\x{0}\n") eq "ok 24\n", '^\x{0}');
+
+# More variations on 19 and 22.
+ok(("ok \xFF\x{FF}\n" & "ok 41\n") eq "ok 41\n", '&, \xFF\x{FF}');
+ok(("ok \x{FF}\xFF\n" & "ok 42\n") eq "ok 42\n", '&, \x{FF}\xFF');
+
 
 #
-print "ok 25\n" if sprintf("%vd", v4095 & v801) eq 801;
-print "ok 26\n" if sprintf("%vd", v4095 | v801) eq 4095;
-print "ok 27\n" if sprintf("%vd", v4095 ^ v801) eq 3294;
+ok(sprintf("%vd", v4095 & v801) eq 801,  "& basic vstrings");
+ok(sprintf("%vd", v4095 | v801) eq 4095, "| basic vstrings");
+ok(sprintf("%vd", v4095 ^ v801) eq 3294, "^ basic vstrings");
 
 #
-print "ok 28\n" if sprintf("%vd", v4095.801.4095 & v801.4095) eq '801.801';
-print "ok 29\n" if sprintf("%vd", v4095.801.4095 | v801.4095) eq '4095.4095.4095';
-print "ok 30\n" if sprintf("%vd", v801.4095 ^ v4095.801.4095) eq '3294.3294.4095';
+ok(sprintf("%vd", v4095.801.4095 & v801.4095) eq '801.801',
+                                         "& vstrings overlap");
+ok(sprintf("%vd", v4095.801.4095 | v801.4095) eq '4095.4095.4095',
+                                         "| vstrings overlap");
+ok(sprintf("%vd", v801.4095 ^ v4095.801.4095) eq '3294.3294.4095',
+                                         "^ vstrings overlap");
 #
-print "ok 31\n" if sprintf("%vd", v120.300 & v200.400) eq '72.256';
-print "ok 32\n" if sprintf("%vd", v120.300 | v200.400) eq '248.444';
-print "ok 33\n" if sprintf("%vd", v120.300 ^ v200.400) eq '176.188';
+ok(sprintf("%vd", v120.300 & v200.400) eq '72.256',  "& dotted vstrings");
+ok(sprintf("%vd", v120.300 | v200.400) eq '248.444', "| dotted vstrings");
+ok(sprintf("%vd", v120.300 ^ v200.400) eq '176.188', "^ dotted vstrings");
 #
 my $a = v120.300;
 my $b = v200.400;
 $a ^= $b;
-print "ok 34\n" if sprintf("%vd", $a) eq '176.188';
+ok(sprintf("%vd", $a) eq '176.188', "^= scalar vstrings");
+
 my $a = v120.300;
 my $b = v200.400;
 $a |= $b;
-print "ok 35\n" if sprintf("%vd", $a) eq '248.444';
+ok(sprintf("%vd", $a) eq '248.444', "|= scalar vstrings");
 
 #
 # UTF8 ~ behaviour
@@ -114,11 +121,7 @@
           if $a ne chr(~$_) or length($a) != 1 or ~$a ne chr($_);
   }
 }
-if (@not36) {
-    print "# test 36 failed\n";
-    print "not ";
-}
-print "ok 36\n";
+ok(!@not36, 'UTF8 ~, 1-byte chars');
 
 my @not37;
 
@@ -138,28 +141,20 @@
     }
   }
 }
-if (@not37) {
-    print "# test 37 failed\n";
-    print "not ";
-}
-print "ok 37\n";
+ok(!@not37, "UTF8 ~, 2-byte chars");
 
-print "not " unless ~chr(~0) eq "\0" or $Is_EBCDIC;
-print "ok 38\n";
+ok((~chr(~0) eq "\0" or $Is_EBCDIC), "double ~ chr(0)");
 
 my @not39;
 
+# DeMorgan's Law tests.
 for my $i (0x100..0x120) {
     for my $j (0x100...0x120) {
        push @not39, sprintf("%#03X %#03X", $i, $j)
            if ~(chr($i)|chr($j)) ne (~chr($i)&~chr($j));
     }
 }
-if (@not39) {
-    print "# test 39 failed\n";
-    print "not ";
-}
-print "ok 39\n";
+ok(!@not39, "UTF8 DeMorgan: | equivalence to ~&~");
 
 my @not40;
 
@@ -169,18 +164,11 @@
            if ~(chr($i)&chr($j)) ne (~chr($i)|~chr($j));
     }
 }
-if (@not40) {
-    print "# test 40 failed\n";
-    print "not ";
-}
-print "ok 40\n";
-
-# More variations on 19 and 22.
-print "ok \xFF\x{FF}\n" & "ok 41\n";
-print "ok \x{FF}\xFF\n" & "ok 42\n";
+ok(!@not40, "UTF8 DeMorgan: & equivalence to ~|~");
 
 # Tests to see if you really can do casts negative floats to unsigned properly
 $neg1 = -1.0;
-print ((~ $neg1 == 0) ? "ok 43\n" : "not ok 43\n");
+ok(~ $neg1 == 0, "float casting: ~ -1.0 == 0");
 $neg7 = -7.0;
-print ((~ $neg7 == 6) ? "ok 44\n" : "not ok 44\n");
+ok(~ $neg7 == 6, "float casting: ~ -7.0 == 6");
+
--- ../op/chars.t       Mon Jul 31 22:32:13 2000
+++ chars.t     Wed Aug 29 12:58:38 2001
@@ -1,74 +1,41 @@
 #!./perl
 
-print "1..33\n";
+use Test::More tests=>33;
 
-# because of ebcdic.c these should be the same on asciiish 
+# because of ebcdic.c these should be the same on asciiish
 # and ebcdic machines.
 # Peter Prymmer <[EMAIL PROTECTED]>.
-
-my $c = "\c@";
-print +((ord($c) == 0) ? "" : "not "),"ok 1\n";
-$c = "\cA";
-print +((ord($c) == 1) ? "" : "not "),"ok 2\n";
-$c = "\cB";
-print +((ord($c) == 2) ? "" : "not "),"ok 3\n";
-$c = "\cC";
-print +((ord($c) == 3) ? "" : "not "),"ok 4\n";
-$c = "\cD";
-print +((ord($c) == 4) ? "" : "not "),"ok 5\n";
-$c = "\cE";
-print +((ord($c) == 5) ? "" : "not "),"ok 6\n";
-$c = "\cF";
-print +((ord($c) == 6) ? "" : "not "),"ok 7\n";
-$c = "\cG";
-print +((ord($c) == 7) ? "" : "not "),"ok 8\n";
-$c = "\cH";
-print +((ord($c) == 8) ? "" : "not "),"ok 9\n";
-$c = "\cI";
-print +((ord($c) == 9) ? "" : "not "),"ok 10\n";
-$c = "\cJ";
-print +((ord($c) == 10) ? "" : "not "),"ok 11\n";
-$c = "\cK";
-print +((ord($c) == 11) ? "" : "not "),"ok 12\n";
-$c = "\cL";
-print +((ord($c) == 12) ? "" : "not "),"ok 13\n";
-$c = "\cM";
-print +((ord($c) == 13) ? "" : "not "),"ok 14\n";
-$c = "\cN";
-print +((ord($c) == 14) ? "" : "not "),"ok 15\n";
-$c = "\cO";
-print +((ord($c) == 15) ? "" : "not "),"ok 16\n";
-$c = "\cP";
-print +((ord($c) == 16) ? "" : "not "),"ok 17\n";
-$c = "\cQ";
-print +((ord($c) == 17) ? "" : "not "),"ok 18\n";
-$c = "\cR";
-print +((ord($c) == 18) ? "" : "not "),"ok 19\n";
-$c = "\cS";
-print +((ord($c) == 19) ? "" : "not "),"ok 20\n";
-$c = "\cT";
-print +((ord($c) == 20) ? "" : "not "),"ok 21\n";
-$c = "\cU";
-print +((ord($c) == 21) ? "" : "not "),"ok 22\n";
-$c = "\cV";
-print +((ord($c) == 22) ? "" : "not "),"ok 23\n";
-$c = "\cW";
-print +((ord($c) == 23) ? "" : "not "),"ok 24\n";
-$c = "\cX";
-print +((ord($c) == 24) ? "" : "not "),"ok 25\n";
-$c = "\cY";
-print +((ord($c) == 25) ? "" : "not "),"ok 26\n";
-$c = "\cZ";
-print +((ord($c) == 26) ? "" : "not "),"ok 27\n";
-$c = "\c[";
-print +((ord($c) == 27) ? "" : "not "),"ok 28\n";
-$c = "\c\\";
-print +((ord($c) == 28) ? "" : "not "),"ok 29\n";
-$c = "\c]";
-print +((ord($c) == 29) ? "" : "not "),"ok 30\n";
-$c = "\c^";
-print +((ord($c) == 30) ? "" : "not "),"ok 31\n";
-$c = "\c_";
-print +((ord($c) == 31) ? "" : "not "),"ok 32\n";
-$c = "\c?";
-print +((ord($c) == 127) ? "" : "not "),"ok 33\n";
+my $c;
+ok(($c="\c@",  ord($c) == 0),   'control-@ == 0');
+ok(($c="\cA",  ord($c) == 1),   'control-@ == 1');
+ok(($c="\cB",  ord($c) == 2),   'control-@ == 2');
+ok(($c="\cC",  ord($c) == 3),   'control-@ == 3');
+ok(($c="\cD",  ord($c) == 4),   'control-@ == 4');
+ok(($c="\cE",  ord($c) == 5),   'control-@ == 5');
+ok(($c="\cF",  ord($c) == 6),   'control-@ == 6');
+ok(($c="\cG",  ord($c) == 7),   'control-@ == 7');
+ok(($c="\cH",  ord($c) == 8),   'control-@ == 8');
+ok(($c="\cI",  ord($c) == 9),   'control-@ == 9');
+ok(($c="\cJ",  ord($c) == 10),  'control-@ == 10');
+ok(($c="\cK",  ord($c) == 11),  'control-@ == 11');
+ok(($c="\cL",  ord($c) == 12),  'control-@ == 12');
+ok(($c="\cM",  ord($c) == 13),  'control-@ == 13');
+ok(($c="\cN",  ord($c) == 14),  'control-@ == 14');
+ok(($c="\cO",  ord($c) == 15),  'control-@ == 15');
+ok(($c="\cP",  ord($c) == 16),  'control-@ == 16');
+ok(($c="\cQ",  ord($c) == 17),  'control-@ == 17');
+ok(($c="\cR",  ord($c) == 18),  'control-@ == 18');
+ok(($c="\cS",  ord($c) == 19),  'control-@ == 19');
+ok(($c="\cT",  ord($c) == 20),  'control-@ == 20');
+ok(($c="\cU",  ord($c) == 21),  'control-@ == 21');
+ok(($c="\cV",  ord($c) == 22),  'control-@ == 22');
+ok(($c="\cW",  ord($c) == 23),  'control-@ == 23');
+ok(($c="\cX",  ord($c) == 24),  'control-@ == 24');
+ok(($c="\cY",  ord($c) == 25),  'control-@ == 25');
+ok(($c="\cZ",  ord($c) == 26),  'control-@ == 26');
+ok(($c="\c[",  ord($c) == 27),  'control-[ == 27');
+ok(($c="\c\\", ord($c) == 28),  'control-\\ == 28');
+ok(($c="\c]",  ord($c) == 29),  'control-] == 29');
+ok(($c="\c^",  ord($c) == 30),  'control-^ == 30');
+ok(($c="\c_",  ord($c) == 31),  'control-_ == 31');
+ok(($c="\c?",  ord($c) == 127), 'control-? == 127');
--- ../op/closure.t     Sat Jun 16 16:49:30 2001
+++ closure.t   Thu Aug 30 10:37:58 2001
@@ -263,8 +263,11 @@
     my \$test = $test;
     sub test (&) {
       my \$result = &{\$_[0]};
-      print "not " unless \$result;
-      print "ok \$test\\n";
+      my \$out = "";
+      \$out = "not " unless \$result;
+      \$out .= "ok \$test\\n";
+      print \$out;
+
       \$test++;
     }
 }
@@ -504,6 +507,5 @@
        }       # End of foreach $within
       }        # End of foreach $where_declared
     }  # End of foreach $inner_type
-
 }
 
--- ../old_op/concat.t  Sun Aug 12 00:34:56 2001
+++ concat.t    Thu Aug 30 11:02:44 2001
@@ -5,49 +5,38 @@
     @INC = '../lib';
 }
 
-print "1..11\n";
+use Test::More tests=>12;
 
 ($a, $b, $c) = qw(foo bar);
 
-print "not " unless "$a" eq "foo";
-print "ok 1\n";
+is("$a", "foo", "verifying assign");
 
-print "not " unless "$a$b" eq "foobar";
-print "ok 2\n";
+is("$a$b",  "foobar", "basic concatenation");
 
-print "not " unless "$c$a$c" eq "foo";
-print "ok 3\n";
+is("$c$a$c",  "foo", "concatenate undef, fore and aft");
 
 # Okay, so that wasn't very challenging.  Let's go Unicode.
 
-my $test = 4;
-
 {
     # bug id 20000819.004 
 
     $_ = $dx = "\x{10f2}";
     s/($dx)/$dx$1/;
     {
-       print "not " unless $_ eq "$dx$dx";
-       print "ok $test\n";
-       $test++;
+       is($_,  "$dx$dx","bug id 20000819.004, back");
     }
 
     $_ = $dx = "\x{10f2}";
     s/($dx)/$1$dx/;
     {
-       print "not " unless $_ eq "$dx$dx";
-       print "ok $test\n";
-       $test++;
+       is($_,  "$dx$dx","bug id 20000819.004, front");
     }
 
     $dx = "\x{10f2}";
     $_  = "\x{10f2}\x{10f2}";
     s/($dx)($dx)/$1$2/;
     {
-       print "not " unless $_ eq "$dx$dx";
-       print "ok $test\n";
-       $test++;
+       is($_,  "$dx$dx","bug id 20000819.004, front and back");
     }
 }
 
@@ -57,9 +46,9 @@
 
     my $a;
     $a .= "\x{1ff}";
-    print "not " unless $a eq "\x{1ff}";
-    print "ok $test\n";
-    $test++;
+    is($a,  "\x{1ff}", "bug id 20000901.092, undef left");
+    $a .= undef;
+    is($a,  "\x{1ff}", "bug id 20000901.092, undef right");
 }
 
 {
@@ -69,29 +58,17 @@
 
     # Without the fix this 5.7.0 would croak:
     # Modification of a read-only value attempted at ...
-    "$2\x{1234}";
-
-    print "ok $test\n";
-    $test++;
+    ok("$2\x{1234}", "bug id 20001020.006, left");
 
     # For symmetry with the above.
-    "\x{1234}$2";
-
-    print "ok $test\n";
-    $test++;
+    ok("\x{1234}$2", "bug id 20001020.006, right");
 
     *pi = \undef;
     # This bug existed earlier than the $2 bug, but is fixed with the same
     # patch. Without the fix this 5.7.0 would also croak:
     # Modification of a read-only value attempted at ...
-    "$pi\x{1234}";
-
-    print "ok $test\n";
-    $test++;
+    ok("$pi\x{1234}", "bug id 20001020.006, constant left");
 
     # For symmetry with the above.
-    "\x{1234}$pi";
-
-    print "ok $test\n";
-    $test++;
+    ok("\x{1234}$pi", "bug id 20001020.006, constant right");
 }
--- ../old_op/defins.t  Mon Jun 11 09:33:14 2001
+++ defins.t    Wed Aug 29 16:53:12 2001
@@ -8,14 +8,14 @@
     chdir 't' if -d 't';
     @INC = '../lib';
     $SIG{__WARN__} = sub { $warns++; warn $_[0] };
-    print "1..14\n";
 }
 
+use Test::More tests=>14;
+
 $wanted_filename = $^O eq 'VMS' ? '0.' : '0';
 $saved_filename = $^O eq 'MacOS' ? ':0' : './0';
-    
-print "not " if $warns;
-print "ok 1\n";
+
+ok(!$warns, "no warnings yet");
 
 open(FILE,">$saved_filename");
 print FILE "1\n";
@@ -29,8 +29,7 @@
  {
   $seen++ if $name eq '0';
  }            
-print "not " unless $seen;
-print "ok 2\n";
+ok($seen, "prefix while, reading file");
 
 seek(FILE,0,0);
 $seen = 0;
@@ -40,9 +39,7 @@
   $seen++ if $line eq '0';
  } while ($line = <FILE>);
 
-print "not " unless $seen;
-print "ok 3\n";
-
+ok($seen,"suffix while, reading file");
 
 seek(FILE,0,0);
 $seen = 0;    
@@ -50,8 +47,7 @@
  {
   $seen++ if $name eq '0';
  }
-print "not " unless $seen;
-print "ok 4\n";
+ok($seen, "conditional expression, reading file");
 
 seek(FILE,0,0);
 $seen = 0;    
@@ -60,8 +56,7 @@
  {
   $seen++ if $where{$seen} eq '0';
  }
-print "not " unless $seen;
-print "ok 5\n";
+ok($seen,"hash");
 close FILE;
 
 opendir(DIR,($^O eq 'MacOS' ? ':' : '.'));
@@ -70,8 +65,7 @@
  {
   $seen++ if $name eq $wanted_filename;
  }            
-print "not " unless $seen;
-print "ok 6\n";
+ok($seen, "prefix while, readdir");
 
 rewinddir(DIR);
 $seen = 0;    
@@ -80,8 +74,7 @@
  {
   $seen++ if $name eq $wanted_filename;
  }
-print "not " unless $seen;
-print "ok 7\n";
+ok($seen, "conditional, readdir");
 
 rewinddir(DIR);
 $seen = 0;    
@@ -89,16 +82,14 @@
  {
   $seen++ if $where{$seen} eq $wanted_filename;
  }
-print "not " unless $seen;
-print "ok 8\n";
+ok($seen, "hash, readdir");
 
 $seen = 0;
 while (my $name = glob('*'))
  {
   $seen++ if $name eq $wanted_filename;
  }            
-print "not " unless $seen;
-print "ok 9\n";
+ok($seen, "glob");
 
 $seen = 0;    
 $dummy = '';
@@ -106,16 +97,14 @@
  {
   $seen++ if $name eq $wanted_filename;
  }
-print "not " unless $seen;
-print "ok 10\n";
+ok($seen, "glob, conditional");
 
 $seen = 0;    
 while ($where{$seen} = glob('*'))
  {
   $seen++ if $where{$seen} eq $wanted_filename;
  }
-print "not " unless $seen;
-print "ok 11\n";
+ok($seen, "glob, hash");
 
 unlink($saved_filename);
 
@@ -126,8 +115,7 @@
  {
   $seen++ if $name eq '0';
  }            
-print "not " unless $seen;
-print "ok 12\n";
+ok($seen, "each");
 
 $seen = 0;    
 $dummy = '';
@@ -135,14 +123,11 @@
  {
   $seen++ if $name eq '0';
  }
-print "not " unless $seen;
-print "ok 13\n";
+ok($seen, "each, conditional");
 
 $seen = 0;    
 while ($where{$seen} = each %hash)
  {
   $seen++ if $where{$seen} eq '0';
  }
-print "not " unless $seen;
-print "ok 14\n";
-
+ok($seen, "each, hash");
--- ../old_op/delete.t  Mon Jul 31 22:32:13 2000
+++ delete.t    Thu Aug 30 12:53:10 2001
@@ -1,6 +1,6 @@
 #!./perl
 
-print "1..36\n";
+use Test::More tests=>36;
 
 # delete() on hash elements
 
@@ -12,25 +12,25 @@
 
 $foo = delete $foo{2};
 
-if ($foo eq 'b') {print "ok 1\n";} else {print "not ok 1 $foo\n";}
-unless (exists $foo{2}) {print "ok 2\n";} else {print "not ok 2 $foo{2}\n";}
-if ($foo{1} eq 'a') {print "ok 3\n";} else {print "not ok 3\n";}
-if ($foo{3} eq 'c') {print "ok 4\n";} else {print "not ok 4\n";}
-if ($foo{4} eq 'd') {print "ok 5\n";} else {print "not ok 5\n";}
-if ($foo{5} eq 'e') {print "ok 6\n";} else {print "not ok 6\n";}
+is($foo, 'b',              "value correct from hash delete()"); 
+ok(!exists $foo{2},        "\$foo{2} is really gone");
+is($foo{1}, 'a',           "\$foo{1} still OK");
+is($foo{3}, 'c',           "\$foo{3} still OK");
+is($foo{4}, 'd',           "\$foo{4} still OK");
+is($foo{5}, 'e',           "\$foo{5} still OK");
 
 @foo = delete @foo{4, 5};
 
-if (@foo == 2) {print "ok 7\n";} else {print "not ok 7 ", @foo+0, "\n";}
-if ($foo[0] eq 'd') {print "ok 8\n";} else {print "not ok 8 ", $foo[0], "\n";}
-if ($foo[1] eq 'e') {print "ok 9\n";} else {print "not ok 9 ", $foo[1], "\n";}
-unless (exists $foo{4}) {print "ok 10\n";} else {print "not ok 10 $foo{4}\n";}
-unless (exists $foo{5}) {print "ok 11\n";} else {print "not ok 11 $foo{5}\n";}
-if ($foo{1} eq 'a') {print "ok 12\n";} else {print "not ok 12\n";}
-if ($foo{3} eq 'c') {print "ok 13\n";} else {print "not ok 13\n";}
+is(scalar(@foo), 2,       "slice delete");
+is($foo[0],  'd',         "value 1 ok from hash slice delete");
+is($foo[1],  'e',         "value 2 ok from hash slice delete");
+ok(!exists $foo{4},       "\$foo{4} really gone");
+ok(!exists $foo{5},       "\$foo{5} really gone");
+is($foo{1}, 'a',          "\$foo{1} still OK");
+is($foo{3}, 'c',          "\$foo{3} still OK");
 
 $foo = join('',values(%foo));
-if ($foo eq 'ac' || $foo eq 'ca') {print "ok 14\n";} else {print "not ok 14\n";}
+ok($foo eq 'ac' || $foo eq 'ca', "values() check");
 
 foreach $key (keys %foo) {
     delete $foo{$key};
@@ -40,7 +40,7 @@
 $foo{'bar'} = 'y';
 
 $foo = join('',values(%foo));
-print +($foo eq 'xy' || $foo eq 'yx') ? "ok 15\n" : "not ok 15\n";
+ok($foo eq 'xy' || $foo eq 'yx', "out with the old hash, in with the new");
 
 $refhash{"top"}->{"foo"} = "FOO";
 $refhash{"top"}->{"bar"} = "BAR";
@@ -48,7 +48,7 @@
 delete $refhash{"top"}->{"bar"};
 @list = keys %{$refhash{"top"}};
 
-print "@list" eq "foo" ? "ok 16\n" : "not ok 16 @list\n";
+is("@list", "foo",              "delete from \$refhash");
 
 {
     my %a = ('bar', 33);
@@ -56,8 +56,7 @@
     my $b = \$a{bar};
     my $c = \delete $a{bar};
 
-    print "not " unless $a == $b && $b == $c;
-    print "ok 17\n";
+    ok($a == $b && $b == $c, "complex hash delete, refs and my()");
 }
 
 # delete() on array elements
@@ -71,46 +70,46 @@
 
 $foo = delete $foo[2];
 
-if ($foo eq 'b') {print "ok 18\n";} else {print "not ok 18 $foo\n";}
-unless (exists $foo[2]) {print "ok 19\n";} else {print "not ok 19 $foo[2]\n";}
-if ($foo[1] eq 'a') {print "ok 20\n";} else {print "not ok 20\n";}
-if ($foo[3] eq 'c') {print "ok 21\n";} else {print "not ok 21\n";}
-if ($foo[4] eq 'd') {print "ok 22\n";} else {print "not ok 22\n";}
-if ($foo[5] eq 'e') {print "ok 23\n";} else {print "not ok 23\n";}
+is($foo, 'b',               "array delete() value");
+ok(!exists $foo[2],         "\$foo[2] actually gone");
+is($foo[1], 'a',            "\$foo[1] still ok");
+is($foo[3], 'c',            "\$foo[3] still ok");
+is($foo[4], 'd',            "\$foo[4] still ok");
+is($foo[5], 'e',            "\$foo[5] still ok");
 
 @bar = delete @foo[4,5];
 
-if (@bar == 2) {print "ok 24\n";} else {print "not ok 24 ", @bar+0, "\n";}
-if ($bar[0] eq 'd') {print "ok 25\n";} else {print "not ok 25 ", $bar[0], "\n";}
-if ($bar[1] eq 'e') {print "ok 26\n";} else {print "not ok 26 ", $bar[1], "\n";}
-unless (exists $foo[4]) {print "ok 27\n";} else {print "not ok 27 $foo[4]\n";}
-unless (exists $foo[5]) {print "ok 28\n";} else {print "not ok 28 $foo[5]\n";}
-if ($foo[1] eq 'a') {print "ok 29\n";} else {print "not ok 29\n";}
-if ($foo[3] eq 'c') {print "ok 30\n";} else {print "not ok 30\n";}
+is(scalar(@bar), 2,         "array slice delete");
+is($bar[0],  'd',           "first value OK");
+is($bar[1],  'e',           "second value OK");
+ok(!exists $foo[4],         "\$foo[4] really gone");
+ok(!exists $foo[5],         "\$foo[5] really gone");
+is($foo[1], 'a',            "\$foo[1] still ok");
+is($foo[3], 'c',            "\$foo[3] still ok");
 
 $foo = join('',@foo);
-if ($foo eq 'ac') {print "ok 31\n";} else {print "not ok 31\n";}
+is($foo, 'ac',              "join() on array");
 
-if (@foo == 4) {print "ok 32\n";} else {print "not ok 32\n";}
+is(scalar(@foo), 4,         "still has 4 elements");
 
 foreach $key (0 .. $#foo) {
     delete $foo[$key];
 }
 
-if (@foo == 0) {print "ok 33\n";} else {print "not ok 33\n";}
+is(scalar(@foo), 0,         "loop deleted everything");
 
 $foo[0] = 'x';
 $foo[1] = 'y';
 
 $foo = "@foo";
-print +($foo eq 'x y') ? "ok 34\n" : "not ok 34\n";
+is($foo, 'x y',             "out with the old array, in with the new");
 
 $refary[0]->[0] = "FOO";
 $refary[0]->[3] = "BAR";
 
 delete $refary[0]->[3];
 
-print @{$refary[0]} == 1 ? "ok 35\n" : "not ok 35 @list\n";
+is(scalar(@{$refary[0]}), 1, "delete on array of refs");  
 
 {
     my @a = 33;
@@ -118,6 +117,5 @@
     my $b = \$a[0];
     my $c = \delete $a[bar];
 
-    print "not " unless $a == $b && $b == $c;
-    print "ok 36\n";
+    ok($a == $b && $b == $c, "complex hash delete, refs and my()");
 }
--- ../old_op/die.t     Mon Jul 31 22:32:13 2000
+++ die.t       Wed Aug 29 17:19:41 2001
@@ -9,14 +9,12 @@
     die $err;
 };
 
-print "not " unless $@ eq $err;
-print "ok 2\n";
+print ($@ eq $err ? "ok 2\n" : "not ok 2\n");
 
 $x = [3];
 eval { die $x; };
 
-print "not " unless $x->[0] == 4;
-print "ok 4\n";
+print ($x->[0] == 4 ? "ok 4\n" : "not ok 4\n");
 
 eval {
     eval {
@@ -32,8 +30,7 @@
     die if $@;
 };
 
-print "not " unless ref($@) eq "Out";
-print "ok 10\n";
+print (ref($@) eq "Out" ? "ok 10\n" : "not ok 10\n");
 
 package Error;
 

Reply via email to