LC_COLLATE.
Jarkko Hietaniemi [Mon, 7 Oct 1996 19:03:00 +0000 (22:03 +0300)]
Big patch to add, document, and test LC_COLLATE support.

A not necessarily gt a.

t/lib/anydbm.t
t/lib/db-btree.t
t/lib/db-hash.t
t/lib/gdbm.t
t/lib/ndbm.t
t/lib/odbm.t
t/lib/sdbm.t
t/op/readdir.t
t/op/sort.t

index 11ac103..957aada 100755 (executable)
@@ -80,7 +80,7 @@ delete $h{'goner3'};
 if ($#keys == 29 && $#values == 29) {print "ok 5\n";} else {print "not ok 5\n";}
 
 while (($key,$value) = each(h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index 1944c38..4142f67 100755 (executable)
@@ -158,7 +158,7 @@ ok(27, $#keys == 29 && $#values == 29) ;
 
 $i = 0 ;
 while (($key,$value) = each(%h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index f5c9cc8..36a3f33 100755 (executable)
@@ -153,7 +153,7 @@ ok(23, $#keys == 29 && $#values == 29) ;
 
 $i = 0 ;
 while (($key,$value) = each(%h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index 0d2c1fe..d15228c 100755 (executable)
@@ -83,7 +83,7 @@ delete $h{'goner3'};
 if ($#keys == 29 && $#values == 29) {print "ok 5\n";} else {print "not ok 5\n";}
 
 while (($key,$value) = each(h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index e3093db..c4788ab 100755 (executable)
@@ -86,7 +86,7 @@ delete $h{'goner3'};
 if ($#keys == 29 && $#values == 29) {print "ok 5\n";} else {print "not ok 5\n";}
 
 while (($key,$value) = each(h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index b49aa91..301640a 100755 (executable)
@@ -86,7 +86,7 @@ delete $h{'goner3'};
 if ($#keys == 29 && $#values == 29) {print "ok 5\n";} else {print "not ok 5\n";}
 
 while (($key,$value) = each(h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index a754bb7..7b93276 100755 (executable)
@@ -85,7 +85,7 @@ delete $h{'goner3'};
 if ($#keys == 29 && $#values == 29) {print "ok 5\n";} else {print "not ok 5\n";}
 
 while (($key,$value) = each(h)) {
-    if ($key eq $keys[$i] && $value eq $values[$i] && $key gt $value) {
+    if ($key eq $keys[$i] && $value eq $values[$i] && $key eq lc($value)) {
        $key =~ y/a-z/A-Z/;
        $i++ if $key eq $value;
     }
index 1215f11..ca19ebc 100755 (executable)
@@ -12,7 +12,7 @@ closedir(OP);
 if (@D > 20 && @D < 100) { print "ok 2\n"; } else { print "not ok 2\n"; }
 
 @R = sort @D;
-@G = <op/*.t>;
+@G = sort <op/*.t>;
 if ($G[0] =~ m#.*\](\w+\.t)#i) {
     # grep is to convert filespecs returned from glob under VMS to format
     # identical to that returned by readdir
index dc01e5f..27bc630 100755 (executable)
@@ -4,19 +4,22 @@
 
 print "1..10\n";
 
-sub backwards { $a lt $b ? 1 : $a gt $b ? -1 : 0; }
+sub backwards { $a lt $b ? 1 : $a gt $b ? -1 : 0 }
 
 @harry = ('dog','cat','x','Cain','Abel');
-@george = ('gone','chased','yz','Punished','Axed');
+@george = ('gone','chased','yz','punished','Axed');
 
 $x = join('', sort @harry);
 print ($x eq 'AbelCaincatdogx' ? "ok 1\n" : "not ok 1\n");
+print "# x = '$x'\n";
 
 $x = join('', sort( backwards @harry));
 print ($x eq 'xdogcatCainAbel' ? "ok 2\n" : "not ok 2\n");
+print "# x = '$x'\n";
 
 $x = join('', sort @george, 'to', @harry);
-print ($x eq 'AbelAxedCainPunishedcatchaseddoggonetoxyz'?"ok 3\n":"not ok 3\n");
+print ($x eq 'AbelAxedCaincatchaseddoggonepunishedtoxyz'?"ok 3\n":"not ok 3\n");
+print "# x = '$x'\n";
 
 @a = ();
 @b = reverse @a;