home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / perl560.zip / t / op / cmp.t < prev    next >
Text File  |  1999-07-20  |  753b  |  36 lines

  1. #!./perl
  2.  
  3. @FOO = ('s', 'N/A', 'a', 'NaN', -1, undef, 0, 1);
  4.  
  5. $expect = ($#FOO+2) * ($#FOO+1);
  6. print "1..$expect\n";
  7.  
  8. my $ok = 0;
  9. for my $i (0..$#FOO) {
  10.     for my $j ($i..$#FOO) {
  11.     $ok++;
  12.     my $cmp = $FOO[$i] <=> $FOO[$j];
  13.     if (!defined($cmp) ||
  14.         $cmp == -1 && $FOO[$i] < $FOO[$j] ||
  15.         $cmp == 0  && $FOO[$i] == $FOO[$j] ||
  16.         $cmp == 1  && $FOO[$i] > $FOO[$j])
  17.     {
  18.         print "ok $ok\n";
  19.     }
  20.     else {
  21.         print "not ok $ok ($FOO[$i] <=> $FOO[$j]) gives: '$cmp'\n";
  22.     }
  23.     $ok++;
  24.     $cmp = $FOO[$i] cmp $FOO[$j];
  25.     if ($cmp == -1 && $FOO[$i] lt $FOO[$j] ||
  26.         $cmp == 0  && $FOO[$i] eq $FOO[$j] ||
  27.         $cmp == 1  && $FOO[$i] gt $FOO[$j])
  28.     {
  29.         print "ok $ok\n";
  30.     }
  31.     else {
  32.         print "not ok $ok ($FOO[$i] cmp $FOO[$j]) gives '$cmp'\n";
  33.     }
  34.     }
  35. }
  36.