1 2BEGIN { 3 if ($ENV{PERL_CORE}) { 4 chdir('t') if -d 't'; 5 @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib); 6 } 7} 8 9use strict; 10use warnings; 11BEGIN { $| = 1; print "1..616\n"; } 12my $count = 0; 13sub ok ($;$) { 14 my $p = my $r = shift; 15 if (@_) { 16 my $x = shift; 17 $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x; 18 } 19 print $p ? "ok" : "not ok", ' ', ++$count, "\n"; 20} 21 22use Unicode::Collate::Locale; 23 24ok(1); 25 26sub _pack_U { Unicode::Collate::pack_U(@_) } 27sub _unpack_U { Unicode::Collate::unpack_U(@_) } 28 29######################### 30 31my $objCu = Unicode::Collate::Locale-> 32 new(locale => 'CU', normalization => undef); 33 34ok($objCu->getlocale, 'cu'); 35 36# 2 37 38### diacritical marks and combining letters ### 39 40# tailored secondary collation elements 41my @sec = ( 42 "\x{487}", "\x{485}", "\x{486}", "\x{301}", "\x{300}", "\x{311}", 43 "\x{483}", "\x{306}", "\x{308}", "\x{2DF6}", "\x{2DE0}", "\x{2DE1}", 44 "\x{2DE2}", "\x{2DE3}", "\x{2DF7}", "\x{A674}", "\x{2DE4}", "\x{2DE5}", 45 "\x{A675}", "\x{A676}", "\x{2DE6}", "\x{2DE7}", "\x{2DE8}", "\x{2DE9}", 46 "\x{2DEA}", "\x{A67B}", "\x{2DEB}", "\x{2DEC}", "\x{2DED}", "\x{2DEE}", 47 "\x{2DF9}", "\x{A677}", "\x{A69E}", "\x{2DEF}", "\x{2DF0}", "\x{2DF1}", 48 "\x{2DF2}", "\x{2DF3}", "\x{33E}", "\x{A679}", "\x{A67F}", "\x{2DFA}", 49 "\x{2DFB}", "\x{2DFE}", "\x{2DFC}", "\x{2DFD}", "\x{2DF4}", "\x{332}", 50 "\x{327}", "\x{328}" # CEDILLA and OGONEK (not tailored) 51); 52 53$objCu->change(level => 1); 54 55for (my $i = 1; $i < @sec; $i++) { 56 ok($objCu->eq("a$sec[$i-1]", "a$sec[$i]")); 57} 58 59# 51 60 61$objCu->change(level => 2); 62 63for (my $i = 1; $i < @sec; $i++) { 64 ok($objCu->lt("a$sec[$i-1]", "a$sec[$i]")); 65} 66 67ok($objCu->gt("a\x{309A}", "a\x{3099}")); # KANA VOICED and SEMI-VOICED 68 69for (my $i = 1; $i < @sec; $i++) { 70 ok($objCu->lt("a\x{309A}b$sec[$i-1]", "a\x{3099}b$sec[$i]")); 71} 72 73# 150 74 75$objCu->change(backwards => undef); 76 77for (my $i = 1; $i < @sec; $i++) { 78 ok($objCu->lt("a$sec[$i-1]", "a$sec[$i]")); 79} 80 81ok($objCu->gt("a\x{309A}", "a\x{3099}")); # KANA VOICED and SEMI-VOICED 82 83for (my $i = 1; $i < @sec; $i++) { 84 ok($objCu->gt("a\x{309A}b$sec[$i-1]", "a\x{3099}b$sec[$i]")); 85} 86 87# 249 88 89$objCu->change(level => 3); 90 91ok($objCu->eq("", "\x{0487}")); 92ok($objCu->eq("", "\x{A67C}")); 93ok($objCu->eq("", "\x{A67E}")); 94 95ok($objCu->eq("a\x{487}", "a\x{A67C}")); 96ok($objCu->eq("a\x{487}", "a\x{A67E}")); 97ok($objCu->eq("a\x{308}", "a\x{30F}")); 98ok($objCu->eq("a\x{33E}", "a\x{A678}")); 99ok($objCu->eq("a\x{33E}", "a\x{2E2F}")); 100ok($objCu->eq("a\x{A67F}","a\x{A67D}")); 101ok($objCu->eq("a\x{A67F}","a\x{A67A}")); 102 103ok($objCu->eq("a\x{2DF5}","a\x{2DED}\x{2DEE}")); 104 105# 260 106 107### normal letters ### 108 109$objCu->change(level => 1); 110 111ok($objCu->lt("\x{410}z", "\x{411}")); 112ok($objCu->lt("\x{411}z", "\x{412}")); 113ok($objCu->lt("\x{412}z", "\x{413}")); 114ok($objCu->lt("\x{413}z", "\x{414}")); 115ok($objCu->lt("\x{414}z", "\x{415}")); 116ok($objCu->lt("\x{415}z", "\x{416}")); 117ok($objCu->lt("\x{416}z", "\x{405}")); # Dze 118ok($objCu->lt("\x{405}z", "\x{417}")); 119ok($objCu->lt("\x{417}z", "\x{418}")); 120ok($objCu->lt("\x{418}z", "\x{406}")); # Byel-Ukr I 121ok($objCu->lt("\x{406}z", "\x{41a}")); 122ok($objCu->lt("\x{41a}z", "\x{41b}")); 123ok($objCu->lt("\x{41b}z", "\x{41c}")); 124ok($objCu->lt("\x{41c}z", "\x{41d}")); 125ok($objCu->lt("\x{41d}z", "\x{40a}")); # Nje 126ok($objCu->lt("\x{40a}z", "\x{50a}")); # Komi Nje 127ok($objCu->lt("\x{50a}z", "\x{41e}")); 128ok($objCu->lt("\x{41e}z", "\x{41f}")); 129ok($objCu->lt("\x{41f}z", "\x{420}")); 130ok($objCu->lt("\x{420}z", "\x{421}")); 131ok($objCu->lt("\x{421}z", "\x{422}")); 132ok($objCu->lt("\x{422}z", "\x{40b}")); # Tshe 133ok($objCu->lt("\x{40b}z", "\x{423}")); 134ok($objCu->lt("\x{423}z", "\x{424}")); 135ok($objCu->lt("\x{424}z", "\x{425}")); 136ok($objCu->lt("\x{425}z", "\x{426}")); 137ok($objCu->lt("\x{426}z", "\x{427}")); 138ok($objCu->lt("\x{427}z", "\x{428}")); 139ok($objCu->lt("\x{428}z", "\x{429}")); 140ok($objCu->lt("\x{429}z", "\x{42a}")); 141ok($objCu->lt("\x{42a}z", "\x{42b}")); 142ok($objCu->lt("\x{42b}z", "\x{42c}")); 143ok($objCu->lt("\x{42c}z", "\x{42d}")); 144ok($objCu->lt("\x{42d}z", "\x{462}")); # Yat 145ok($objCu->lt("\x{462}z", "\x{42e}")); 146ok($objCu->lt("\x{42e}z", "\x{46a}")); # Big Yus 147ok($objCu->lt("\x{46a}z", "\x{42f}")); 148ok($objCu->lt("\x{42f}z", "\x{466}")); # Little Yus 149ok($objCu->lt("\x{466}z", "\x{46e}")); # Ksi 150ok($objCu->lt("\x{46e}z", "\x{470}")); # Psi 151ok($objCu->lt("\x{470}z", "\x{472}")); # Fita 152ok($objCu->lt("\x{472}z", "\x{474}")); # Izhitsa 153 154# 302 155 156$objCu->change(level => 2); 157 158ok($objCu->eq("\x{430}", "\x{410}")); 159ok($objCu->eq("\x{431}", "\x{411}")); 160ok($objCu->eq("\x{432}", "\x{412}")); 161ok($objCu->eq("\x{433}", "\x{413}")); 162ok($objCu->eq("\x{434}", "\x{414}")); 163ok($objCu->eq("\x{435}", "\x{415}")); 164ok($objCu->eq("\x{436}", "\x{416}")); 165ok($objCu->eq("\x{455}", "\x{405}")); # Dze 166ok($objCu->eq("\x{437}", "\x{417}")); 167ok($objCu->eq("\x{438}", "\x{418}")); 168ok($objCu->eq("\x{456}", "\x{406}")); # Byel-Ukr I 169ok($objCu->eq("\x{43a}", "\x{41a}")); 170ok($objCu->eq("\x{43b}", "\x{41b}")); 171ok($objCu->eq("\x{43c}", "\x{41c}")); 172ok($objCu->eq("\x{43d}", "\x{41d}")); 173ok($objCu->eq("\x{45a}", "\x{40a}")); # Nje 174ok($objCu->eq("\x{50b}", "\x{50a}")); # Komi Nje 175ok($objCu->eq("\x{43e}", "\x{41e}")); 176ok($objCu->eq("\x{43f}", "\x{41f}")); 177ok($objCu->eq("\x{440}", "\x{420}")); 178ok($objCu->eq("\x{441}", "\x{421}")); 179ok($objCu->eq("\x{442}", "\x{422}")); 180ok($objCu->eq("\x{45b}", "\x{40b}")); # Tshe 181ok($objCu->eq("\x{443}", "\x{423}")); 182ok($objCu->eq("\x{444}", "\x{424}")); 183ok($objCu->eq("\x{445}", "\x{425}")); 184ok($objCu->eq("\x{446}", "\x{426}")); 185ok($objCu->eq("\x{447}", "\x{427}")); 186ok($objCu->eq("\x{448}", "\x{428}")); 187ok($objCu->eq("\x{449}", "\x{429}")); 188ok($objCu->eq("\x{44a}", "\x{42a}")); 189ok($objCu->eq("\x{44b}", "\x{42b}")); 190ok($objCu->eq("\x{44c}", "\x{42c}")); 191ok($objCu->eq("\x{44d}", "\x{42d}")); 192ok($objCu->eq("\x{463}", "\x{462}")); # Yat 193ok($objCu->eq("\x{44e}", "\x{42e}")); 194ok($objCu->eq("\x{46b}", "\x{46a}")); # Big Yus 195ok($objCu->eq("\x{44f}", "\x{42f}")); 196ok($objCu->eq("\x{467}", "\x{466}")); # Little Yus 197ok($objCu->eq("\x{46f}", "\x{46e}")); # Ksi 198ok($objCu->eq("\x{471}", "\x{470}")); # Psi 199ok($objCu->eq("\x{473}", "\x{472}")); # Fita 200ok($objCu->eq("\x{475}", "\x{474}")); # Izhitsa 201 202# 345 203 204ok($objCu->eq("\x{435}", "\x{454}")); # ie / ukr ie 205ok($objCu->eq("\x{435}", "\x{404}")); # ie / UKR IE 206ok($objCu->eq("\x{415}", "\x{454}")); # IE / ukr ie 207ok($objCu->eq("\x{415}", "\x{404}")); # IE / UKR IE 208ok($objCu->eq("\x{454}", "\x{404}")); # ukr ie / UKR IE 209 210ok($objCu->eq("\x{47B}", "\x{47A}")); # round omega / ROUND OMEGA 211ok($objCu->eq("\x{47B}", "\x{43E}")); # round omega / o 212ok($objCu->eq("\x{47B}", "\x{41E}")); # round omega / O 213ok($objCu->eq("\x{47A}", "\x{43E}")); # ROUND OMEGA / o 214ok($objCu->eq("\x{47A}", "\x{41E}")); # ROUND OMEGA / O 215ok($objCu->eq("\x{43E}", "\x{461}")); # o / omega 216ok($objCu->eq("\x{43E}", "\x{460}")); # o / OMEGA 217ok($objCu->eq("\x{41E}", "\x{461}")); # O / omega 218ok($objCu->eq("\x{41E}", "\x{460}")); # O / OMEGA 219ok($objCu->eq("\x{461}", "\x{460}")); # omega / OMEGA 220ok($objCu->eq("\x{461}", "\x{A64D}")); # omega / broad omega 221ok($objCu->eq("\x{461}", "\x{A64C}")); # omega / BROAD OMEGA 222ok($objCu->eq("\x{460}", "\x{A64D}")); # OMEGA / broad omega 223ok($objCu->eq("\x{460}", "\x{A64C}")); # OMEGA / BROAD OMEGA 224ok($objCu->eq("\x{A64D}","\x{A64C}")); # broad omega / BROAD OMEGA 225 226ok($objCu->eq("\x{479}", "\x{478}")); # uk / UK 227ok($objCu->eq("\x{479}", "\x{A64B}")); # uk / monograph uk 228ok($objCu->eq("\x{479}", "\x{A64A}")); # uk / MONOGRAPH UK 229ok($objCu->eq("\x{478}", "\x{A64B}")); # UK / monograph uk 230ok($objCu->eq("\x{478}", "\x{A64A}")); # UK / MONOGRAPH UK 231ok($objCu->eq("\x{A64B}","\x{A64A}")); # monograph uk / MONOGRAPH UK 232ok($objCu->eq("\x{A64B}","\x{443}")); # monograph uk / u 233ok($objCu->eq("\x{A64B}","\x{423}")); # monograph uk / U 234ok($objCu->eq("\x{A64A}","\x{443}")); # MONOGRAPH UK / u 235ok($objCu->eq("\x{A64A}","\x{423}")); # MONOGRAPH UK / U 236 237ok($objCu->eq("\x{A657}","\x{A656}")); # iotified a / IOTIFIED A 238ok($objCu->eq("\x{A657}","\x{467}")); # iotified a / little yus 239ok($objCu->eq("\x{A657}","\x{466}")); # iotified a / LITTLE YUS 240ok($objCu->eq("\x{A656}","\x{467}")); # IOTIFIED A / little yus 241ok($objCu->eq("\x{A656}","\x{466}")); # IOTIFIED A / LITTLE YUS 242 243# 380 244 245$objCu->change(level => 3); 246 247ok($objCu->gt("\x{430}", "\x{410}")); 248ok($objCu->gt("\x{431}", "\x{411}")); 249ok($objCu->gt("\x{432}", "\x{412}")); 250ok($objCu->gt("\x{433}", "\x{413}")); 251ok($objCu->gt("\x{434}", "\x{414}")); 252ok($objCu->gt("\x{435}", "\x{415}")); 253ok($objCu->gt("\x{436}", "\x{416}")); 254ok($objCu->gt("\x{455}", "\x{405}")); # Dze 255ok($objCu->gt("\x{437}", "\x{417}")); 256ok($objCu->gt("\x{438}", "\x{418}")); 257ok($objCu->gt("\x{456}", "\x{406}")); # Byel-Ukr I 258ok($objCu->gt("\x{43a}", "\x{41a}")); 259ok($objCu->gt("\x{43b}", "\x{41b}")); 260ok($objCu->gt("\x{43c}", "\x{41c}")); 261ok($objCu->gt("\x{43d}", "\x{41d}")); 262ok($objCu->gt("\x{45a}", "\x{40a}")); # Nje 263ok($objCu->gt("\x{50b}", "\x{50a}")); # Komi Nje 264ok($objCu->gt("\x{43e}", "\x{41e}")); 265ok($objCu->gt("\x{43f}", "\x{41f}")); 266ok($objCu->gt("\x{440}", "\x{420}")); 267ok($objCu->gt("\x{441}", "\x{421}")); 268ok($objCu->gt("\x{442}", "\x{422}")); 269ok($objCu->gt("\x{45b}", "\x{40b}")); # Tshe 270ok($objCu->gt("\x{443}", "\x{423}")); 271ok($objCu->gt("\x{444}", "\x{424}")); 272ok($objCu->gt("\x{445}", "\x{425}")); 273ok($objCu->gt("\x{446}", "\x{426}")); 274ok($objCu->gt("\x{447}", "\x{427}")); 275ok($objCu->gt("\x{448}", "\x{428}")); 276ok($objCu->gt("\x{449}", "\x{429}")); 277ok($objCu->gt("\x{44a}", "\x{42a}")); 278ok($objCu->gt("\x{44b}", "\x{42b}")); 279ok($objCu->gt("\x{44c}", "\x{42c}")); 280ok($objCu->gt("\x{44d}", "\x{42d}")); 281ok($objCu->gt("\x{463}", "\x{462}")); # Yat 282ok($objCu->gt("\x{44e}", "\x{42e}")); 283ok($objCu->gt("\x{46b}", "\x{46a}")); # Big Yus 284ok($objCu->gt("\x{44f}", "\x{42f}")); 285ok($objCu->gt("\x{467}", "\x{466}")); # Little Yus 286ok($objCu->gt("\x{46f}", "\x{46e}")); # Ksi 287ok($objCu->gt("\x{471}", "\x{470}")); # Psi 288ok($objCu->gt("\x{473}", "\x{472}")); # Fita 289ok($objCu->gt("\x{475}", "\x{474}")); # Izhitsa 290 291# 423 292 293ok($objCu->lt("\x{435}", "\x{454}")); # ie / ukr ie 294ok($objCu->lt("\x{435}", "\x{404}")); # ie / UKR IE 295ok($objCu->lt("\x{415}", "\x{454}")); # IE / ukr ie 296ok($objCu->lt("\x{415}", "\x{404}")); # IE / UKR IE 297ok($objCu->gt("\x{454}", "\x{404}")); # ukr ie / UKR IE 298 299ok($objCu->gt("\x{47B}", "\x{47A}")); # round omega / ROUND OMEGA 300ok($objCu->lt("\x{47B}", "\x{43E}")); # round omega / o 301ok($objCu->lt("\x{47B}", "\x{41E}")); # round omega / O 302ok($objCu->lt("\x{47A}", "\x{43E}")); # ROUND OMEGA / o 303ok($objCu->lt("\x{47A}", "\x{41E}")); # ROUND OMEGA / O 304ok($objCu->lt("\x{43E}", "\x{461}")); # o / omega 305ok($objCu->lt("\x{43E}", "\x{460}")); # o / OMEGA 306ok($objCu->lt("\x{41E}", "\x{461}")); # O / omega 307ok($objCu->lt("\x{41E}", "\x{460}")); # O / OMEGA 308ok($objCu->gt("\x{461}", "\x{460}")); # omega / OMEGA 309ok($objCu->lt("\x{461}", "\x{A64D}")); # omega / broad omega 310ok($objCu->lt("\x{461}", "\x{A64C}")); # omega / BROAD OMEGA 311ok($objCu->lt("\x{460}", "\x{A64D}")); # OMEGA / broad omega 312ok($objCu->lt("\x{460}", "\x{A64C}")); # OMEGA / BROAD OMEGA 313ok($objCu->gt("\x{A64D}","\x{A64C}")); # broad omega / BROAD OMEGA 314 315ok($objCu->gt("\x{479}", "\x{478}")); # uk / UK 316ok($objCu->lt("\x{479}", "\x{A64B}")); # uk / monograph uk 317ok($objCu->lt("\x{479}", "\x{A64A}")); # uk / MONOGRAPH UK 318ok($objCu->lt("\x{478}", "\x{A64B}")); # UK / monograph uk 319ok($objCu->lt("\x{478}", "\x{A64A}")); # UK / MONOGRAPH UK 320ok($objCu->gt("\x{A64B}","\x{A64A}")); # monograph uk / MONOGRAPH UK 321ok($objCu->lt("\x{A64B}","\x{443}")); # monograph uk / u 322ok($objCu->lt("\x{A64B}","\x{423}")); # monograph uk / U 323ok($objCu->lt("\x{A64A}","\x{443}")); # MONOGRAPH UK / u 324ok($objCu->lt("\x{A64A}","\x{423}")); # MONOGRAPH UK / U 325 326ok($objCu->gt("\x{A657}","\x{A656}")); # iotified a / IOTIFIED A 327ok($objCu->lt("\x{A657}","\x{467}")); # iotified a / little yus 328ok($objCu->lt("\x{A657}","\x{466}")); # iotified a / LITTLE YUS 329ok($objCu->lt("\x{A656}","\x{467}")); # IOTIFIED A / little yus 330ok($objCu->lt("\x{A656}","\x{466}")); # IOTIFIED A / LITTLE YUS 331 332# 458 333 334$objCu->change(upper_before_lower => 0); 335 336ok($objCu->lt("\x{430}", "\x{410}")); 337ok($objCu->lt("\x{431}", "\x{411}")); 338ok($objCu->lt("\x{432}", "\x{412}")); 339ok($objCu->lt("\x{433}", "\x{413}")); 340ok($objCu->lt("\x{434}", "\x{414}")); 341ok($objCu->lt("\x{435}", "\x{415}")); 342ok($objCu->lt("\x{436}", "\x{416}")); 343ok($objCu->lt("\x{455}", "\x{405}")); # Dze 344ok($objCu->lt("\x{437}", "\x{417}")); 345ok($objCu->lt("\x{438}", "\x{418}")); 346ok($objCu->lt("\x{456}", "\x{406}")); # Byel-Ukr I 347ok($objCu->lt("\x{43a}", "\x{41a}")); 348ok($objCu->lt("\x{43b}", "\x{41b}")); 349ok($objCu->lt("\x{43c}", "\x{41c}")); 350ok($objCu->lt("\x{43d}", "\x{41d}")); 351ok($objCu->lt("\x{45a}", "\x{40a}")); # Nje 352ok($objCu->lt("\x{50b}", "\x{50a}")); # Komi Nje 353ok($objCu->lt("\x{43e}", "\x{41e}")); 354ok($objCu->lt("\x{43f}", "\x{41f}")); 355ok($objCu->lt("\x{440}", "\x{420}")); 356ok($objCu->lt("\x{441}", "\x{421}")); 357ok($objCu->lt("\x{442}", "\x{422}")); 358ok($objCu->lt("\x{45b}", "\x{40b}")); # Tshe 359ok($objCu->lt("\x{443}", "\x{423}")); 360ok($objCu->lt("\x{444}", "\x{424}")); 361ok($objCu->lt("\x{445}", "\x{425}")); 362ok($objCu->lt("\x{446}", "\x{426}")); 363ok($objCu->lt("\x{447}", "\x{427}")); 364ok($objCu->lt("\x{448}", "\x{428}")); 365ok($objCu->lt("\x{449}", "\x{429}")); 366ok($objCu->lt("\x{44a}", "\x{42a}")); 367ok($objCu->lt("\x{44b}", "\x{42b}")); 368ok($objCu->lt("\x{44c}", "\x{42c}")); 369ok($objCu->lt("\x{44d}", "\x{42d}")); 370ok($objCu->lt("\x{463}", "\x{462}")); # Yat 371ok($objCu->lt("\x{44e}", "\x{42e}")); 372ok($objCu->lt("\x{46b}", "\x{46a}")); # Big Yus 373ok($objCu->lt("\x{44f}", "\x{42f}")); 374ok($objCu->lt("\x{467}", "\x{466}")); # Little Yus 375ok($objCu->lt("\x{46f}", "\x{46e}")); # Ksi 376ok($objCu->lt("\x{471}", "\x{470}")); # Psi 377ok($objCu->lt("\x{473}", "\x{472}")); # Fita 378ok($objCu->lt("\x{475}", "\x{474}")); # Izhitsa 379 380# 501 381 382ok($objCu->lt("\x{435}", "\x{454}")); # ie / ukr ie 383ok($objCu->lt("\x{435}", "\x{404}")); # ie / UKR IE 384ok($objCu->lt("\x{415}", "\x{454}")); # IE / ukr ie 385ok($objCu->lt("\x{415}", "\x{404}")); # IE / UKR IE 386ok($objCu->lt("\x{454}", "\x{404}")); # ukr ie / UKR IE 387 388ok($objCu->lt("\x{47B}", "\x{47A}")); # round omega / ROUND OMEGA 389ok($objCu->lt("\x{47B}", "\x{43E}")); # round omega / o 390ok($objCu->lt("\x{47B}", "\x{41E}")); # round omega / O 391ok($objCu->lt("\x{47A}", "\x{43E}")); # ROUND OMEGA / o 392ok($objCu->lt("\x{47A}", "\x{41E}")); # ROUND OMEGA / O 393ok($objCu->lt("\x{43E}", "\x{461}")); # o / omega 394ok($objCu->lt("\x{43E}", "\x{460}")); # o / OMEGA 395ok($objCu->lt("\x{41E}", "\x{461}")); # O / omega 396ok($objCu->lt("\x{41E}", "\x{460}")); # O / OMEGA 397ok($objCu->lt("\x{461}", "\x{460}")); # omega / OMEGA 398ok($objCu->lt("\x{461}", "\x{A64D}")); # omega / broad omega 399ok($objCu->lt("\x{461}", "\x{A64C}")); # omega / BROAD OMEGA 400ok($objCu->lt("\x{460}", "\x{A64D}")); # OMEGA / broad omega 401ok($objCu->lt("\x{460}", "\x{A64C}")); # OMEGA / BROAD OMEGA 402ok($objCu->lt("\x{A64D}","\x{A64C}")); # broad omega / BROAD OMEGA 403 404ok($objCu->lt("\x{479}", "\x{478}")); # uk / UK 405ok($objCu->lt("\x{479}", "\x{A64B}")); # uk / monograph uk 406ok($objCu->lt("\x{479}", "\x{A64A}")); # uk / MONOGRAPH UK 407ok($objCu->lt("\x{478}", "\x{A64B}")); # UK / monograph uk 408ok($objCu->lt("\x{478}", "\x{A64A}")); # UK / MONOGRAPH UK 409ok($objCu->lt("\x{A64B}","\x{A64A}")); # monograph uk / MONOGRAPH UK 410ok($objCu->lt("\x{A64B}","\x{443}")); # monograph uk / u 411ok($objCu->lt("\x{A64B}","\x{423}")); # monograph uk / U 412ok($objCu->lt("\x{A64A}","\x{443}")); # MONOGRAPH UK / u 413ok($objCu->lt("\x{A64A}","\x{423}")); # MONOGRAPH UK / U 414 415ok($objCu->lt("\x{A657}","\x{A656}")); # iotified a / IOTIFIED A 416ok($objCu->lt("\x{A657}","\x{467}")); # iotified a / little yus 417ok($objCu->lt("\x{A657}","\x{466}")); # iotified a / LITTLE YUS 418ok($objCu->lt("\x{A656}","\x{467}")); # IOTIFIED A / little yus 419ok($objCu->lt("\x{A656}","\x{466}")); # IOTIFIED A / LITTLE YUS 420 421# 536 422 423# equiv. 424 425ok($objCu->eq("\x{1C81}", "\x{434}")); 426ok($objCu->eq("\x{A641}", "\x{437}")); 427ok($objCu->eq("\x{A640}", "\x{417}")); 428ok($objCu->eq("\x{1C82}", "\x{43E}")); 429 430ok($objCu->eq("\x{479}", "\x{43E}\x{443}")); 431ok($objCu->eq("\x{479}","\x{1C82}\x{443}")); 432ok($objCu->eq("\x{478}", "\x{41E}\x{443}")); 433ok($objCu->eq("\x{478}", "\x{41E}\x{423}")); 434 435# 544 436 437# decomp. equiv. 438 439ok($objCu->eq("\x{457}", "\x{456}\x{308}")); 440ok($objCu->eq("\x{407}", "\x{406}\x{308}")); 441ok($objCu->eq("\x{439}", "\x{438}\x{306}")); 442ok($objCu->eq("\x{419}", "\x{418}\x{306}")); 443ok($objCu->eq("\x{4E6}", "\x{41E}\x{308}")); 444ok($objCu->eq("\x{4E7}", "\x{43E}\x{308}")); 445ok($objCu->eq("\x{45E}", "\x{443}\x{306}")); 446ok($objCu->eq("\x{40E}", "\x{423}\x{306}")); 447ok($objCu->eq("\x{4F1}", "\x{443}\x{308}")); 448ok($objCu->eq("\x{4F0}", "\x{423}\x{308}")); 449ok($objCu->eq("\x{4F3}", "\x{443}\x{30B}")); 450ok($objCu->eq("\x{4F2}", "\x{423}\x{30B}")); 451ok($objCu->eq("\x{4EF}", "\x{443}\x{304}")); 452ok($objCu->eq("\x{4EE}", "\x{423}\x{304}")); 453 454ok($objCu->eq("\x{47C}", "\x{A64C}\x{486}\x{311}")); 455ok($objCu->eq("\x{47D}", "\x{A64D}\x{486}\x{311}")); 456ok($objCu->eq("\x{47E}", "\x{460}\x{442}")); 457ok($objCu->eq("\x{47F}", "\x{461}\x{442}")); 458 459# 562 460 461# misc. equiv. 462 463ok($objCu->eq("\x{4D1}", "\x{430}\x{306}")); 464ok($objCu->eq("\x{4D0}", "\x{410}\x{306}")); 465ok($objCu->eq("\x{4D3}", "\x{430}\x{308}")); 466ok($objCu->eq("\x{4D2}", "\x{410}\x{308}")); 467ok($objCu->eq("\x{450}", "\x{435}\x{300}")); 468ok($objCu->eq("\x{400}", "\x{415}\x{300}")); 469ok($objCu->eq("\x{4D7}", "\x{435}\x{306}")); 470ok($objCu->eq("\x{4D6}", "\x{415}\x{306}")); 471ok($objCu->eq("\x{451}", "\x{435}\x{308}")); 472ok($objCu->eq("\x{401}", "\x{415}\x{308}")); 473ok($objCu->eq("\x{45D}", "\x{438}\x{300}")); 474ok($objCu->eq("\x{40D}", "\x{418}\x{300}")); 475ok($objCu->eq("\x{4E5}", "\x{438}\x{308}")); 476ok($objCu->eq("\x{4E4}", "\x{418}\x{308}")); 477ok($objCu->eq("\x{4ED}", "\x{44D}\x{308}")); 478ok($objCu->eq("\x{4EC}", "\x{42D}\x{308}")); 479ok($objCu->eq("\x{477}", "\x{475}\x{30F}")); 480ok($objCu->eq("\x{476}", "\x{474}\x{30F}")); 481 482# 580 483 484# latin equiv. 485 486ok($objCu->eq("a\x{300}", _pack_U(0xE0))); 487ok($objCu->eq("A\x{300}", _pack_U(0xC0))); 488ok($objCu->eq("e\x{300}", _pack_U(0xE8))); 489ok($objCu->eq("E\x{300}", _pack_U(0xC8))); 490ok($objCu->eq("i\x{300}", _pack_U(0xEC))); 491ok($objCu->eq("I\x{300}", _pack_U(0xCC))); 492ok($objCu->eq("o\x{300}", _pack_U(0xF2))); 493ok($objCu->eq("O\x{300}", _pack_U(0xD2))); 494ok($objCu->eq("u\x{300}", _pack_U(0xF9))); 495ok($objCu->eq("U\x{300}", _pack_U(0xD9))); 496ok($objCu->eq("y\x{300}", "\x{1EF3}")); 497ok($objCu->eq("Y\x{300}", "\x{1EF2}")); 498 499ok($objCu->eq("a\x{301}", _pack_U(0xE1))); 500ok($objCu->eq("A\x{301}", _pack_U(0xC1))); 501ok($objCu->eq("e\x{301}", _pack_U(0xE9))); 502ok($objCu->eq("E\x{301}", _pack_U(0xC9))); 503ok($objCu->eq("i\x{301}", _pack_U(0xED))); 504ok($objCu->eq("I\x{301}", _pack_U(0xCD))); 505ok($objCu->eq("o\x{301}", _pack_U(0xF3))); 506ok($objCu->eq("O\x{301}", _pack_U(0xD3))); 507ok($objCu->eq("u\x{301}", _pack_U(0xFA))); 508ok($objCu->eq("U\x{301}", _pack_U(0xDA))); 509ok($objCu->eq("y\x{301}", _pack_U(0xFD))); 510ok($objCu->eq("Y\x{301}", _pack_U(0xDD))); 511 512ok($objCu->eq("a\x{308}", _pack_U(0xE4))); 513ok($objCu->eq("A\x{308}", _pack_U(0xC4))); 514ok($objCu->eq("e\x{308}", _pack_U(0xEB))); 515ok($objCu->eq("E\x{308}", _pack_U(0xCB))); 516ok($objCu->eq("i\x{308}", _pack_U(0xEF))); 517ok($objCu->eq("I\x{308}", _pack_U(0xCF))); 518ok($objCu->eq("o\x{308}", _pack_U(0xF6))); 519ok($objCu->eq("O\x{308}", _pack_U(0xD6))); 520ok($objCu->eq("u\x{308}", _pack_U(0xFC))); 521ok($objCu->eq("U\x{308}", _pack_U(0xDC))); 522ok($objCu->eq("y\x{308}", _pack_U(0xFF))); 523ok($objCu->eq("Y\x{308}", "\x{178}")); 524 525# 616 526