diff options
Diffstat (limited to 't/op/sort.t')
-rw-r--r-- | t/op/sort.t | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/t/op/sort.t b/t/op/sort.t new file mode 100644 index 0000000000..b1b2202d2b --- /dev/null +++ b/t/op/sort.t @@ -0,0 +1,39 @@ +#!./perl + +# $Header: sort.t,v 4.0 91/03/20 01:54:38 lwall Locked $ + +print "1..8\n"; + +sub reverse { $a lt $b ? 1 : $a gt $b ? -1 : 0; } + +@harry = ('dog','cat','x','Cain','Abel'); +@george = ('gone','chased','yz','Punished','Axed'); + +$x = join('', sort @harry); +print ($x eq 'AbelCaincatdogx' ? "ok 1\n" : "not ok 1\n"); + +$x = join('', sort reverse @harry); +print ($x eq 'xdogcatCainAbel' ? "ok 2\n" : "not ok 2\n"); + +$x = join('', sort @george, 'to', @harry); +print ($x eq 'AbelAxedCainPunishedcatchaseddoggonetoxyz'?"ok 3\n":"not ok 3\n"); + +@a = (); +@b = reverse @a; +print ("@b" eq "" ? "ok 4\n" : "not ok 4 (@b)\n"); + +@a = (1); +@b = reverse @a; +print ("@b" eq "1" ? "ok 5\n" : "not ok 5 (@b)\n"); + +@a = (1,2); +@b = reverse @a; +print ("@b" eq "2 1" ? "ok 6\n" : "not ok 6 (@b)\n"); + +@a = (1,2,3); +@b = reverse @a; +print ("@b" eq "3 2 1" ? "ok 7\n" : "not ok 7 (@b)\n"); + +@a = (1,2,3,4); +@b = reverse @a; +print ("@b" eq "4 3 2 1" ? "ok 8\n" : "not ok 8 (@b)\n"); |