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..528\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 $objJa = Unicode::Collate::Locale-> 32 new(locale => 'JA', normalization => undef); 33 34ok($objJa->getlocale, 'ja'); 35 36$objJa->change(level => 1); 37 38# first ten kanji 39ok($objJa->lt("\x{4E9C}", "\x{5516}")); 40ok($objJa->lt("\x{5516}", "\x{5A03}")); 41ok($objJa->lt("\x{5A03}", "\x{963F}")); 42ok($objJa->lt("\x{963F}", "\x{54C0}")); 43ok($objJa->lt("\x{54C0}", "\x{611B}")); 44ok($objJa->lt("\x{611B}", "\x{6328}")); 45ok($objJa->lt("\x{6328}", "\x{59F6}")); 46ok($objJa->lt("\x{59F6}", "\x{9022}")); 47ok($objJa->lt("\x{9022}", "\x{8475}")); 48 49# last five kanji and undef 50ok($objJa->lt("\x{69C7}", "\x{9059}")); 51ok($objJa->lt("\x{9059}", "\x{7464}")); 52ok($objJa->lt("\x{7464}", "\x{51DC}")); 53ok($objJa->lt("\x{51DC}", "\x{7199}")); 54ok($objJa->lt("\x{7199}", "\x{4E02}")); # 4E02: UIdeo undef in JIS X 0208 55ok($objJa->lt("\x{4E02}", "\x{3400}")); # 3400: Ext.A undef in JIS X 0208 56 57# Ext.B 58ok($objJa->lt("\x{20000}", "\x{20001}")); 59ok($objJa->lt("\x{20001}", "\x{20002}")); 60ok($objJa->lt("\x{20002}", "\x{20003}")); 61ok($objJa->lt("\x{20003}", "\x{20004}")); 62ok($objJa->lt("\x{20004}", "\x{20005}")); 63 64# 22 65 66$objJa->change(overrideCJK => undef); 67 68ok($objJa->lt("\x{4E00}", "\x{4E01}")); 69ok($objJa->lt("\x{4E01}", "\x{4E02}")); 70ok($objJa->lt("\x{4E02}", "\x{4E03}")); 71ok($objJa->lt("\x{4E03}", "\x{4E04}")); 72ok($objJa->lt("\x{4E04}", "\x{4E05}")); 73 74ok($objJa->lt("\x{9F9B}", "\x{9F9C}")); 75ok($objJa->lt("\x{9F9C}", "\x{9F9D}")); 76ok($objJa->lt("\x{9F9D}", "\x{9F9E}")); 77ok($objJa->lt("\x{9F9E}", "\x{9F9F}")); 78ok($objJa->lt("\x{9F9F}", "\x{9FA0}")); 79 80# 32 81 82$objJa->change(level => 3); 83 84ok($objJa->eq("\x{3041}", "\x{30A1}")); 85ok($objJa->eq("\x{3042}", "\x{30A2}")); 86ok($objJa->eq("\x{3043}", "\x{30A3}")); 87ok($objJa->eq("\x{3044}", "\x{30A4}")); 88ok($objJa->eq("\x{3045}", "\x{30A5}")); 89ok($objJa->eq("\x{3046}", "\x{30A6}")); 90ok($objJa->eq("\x{3047}", "\x{30A7}")); 91ok($objJa->eq("\x{3048}", "\x{30A8}")); 92ok($objJa->eq("\x{3049}", "\x{30A9}")); 93ok($objJa->eq("\x{304A}", "\x{30AA}")); 94ok($objJa->eq("\x{304B}", "\x{30AB}")); 95ok($objJa->eq("\x{304C}", "\x{30AC}")); 96ok($objJa->eq("\x{304D}", "\x{30AD}")); 97ok($objJa->eq("\x{304E}", "\x{30AE}")); 98ok($objJa->eq("\x{304F}", "\x{30AF}")); 99ok($objJa->eq("\x{3050}", "\x{30B0}")); 100ok($objJa->eq("\x{3051}", "\x{30B1}")); 101ok($objJa->eq("\x{3052}", "\x{30B2}")); 102ok($objJa->eq("\x{3053}", "\x{30B3}")); 103ok($objJa->eq("\x{3054}", "\x{30B4}")); 104ok($objJa->eq("\x{3055}", "\x{30B5}")); 105ok($objJa->eq("\x{3056}", "\x{30B6}")); 106ok($objJa->eq("\x{3057}", "\x{30B7}")); 107ok($objJa->eq("\x{3058}", "\x{30B8}")); 108ok($objJa->eq("\x{3059}", "\x{30B9}")); 109ok($objJa->eq("\x{305A}", "\x{30BA}")); 110ok($objJa->eq("\x{305B}", "\x{30BB}")); 111ok($objJa->eq("\x{305C}", "\x{30BC}")); 112ok($objJa->eq("\x{305D}", "\x{30BD}")); 113ok($objJa->eq("\x{305E}", "\x{30BE}")); 114ok($objJa->eq("\x{305F}", "\x{30BF}")); 115ok($objJa->eq("\x{3060}", "\x{30C0}")); 116ok($objJa->eq("\x{3061}", "\x{30C1}")); 117ok($objJa->eq("\x{3062}", "\x{30C2}")); 118ok($objJa->eq("\x{3063}", "\x{30C3}")); 119ok($objJa->eq("\x{3064}", "\x{30C4}")); 120ok($objJa->eq("\x{3065}", "\x{30C5}")); 121ok($objJa->eq("\x{3066}", "\x{30C6}")); 122ok($objJa->eq("\x{3067}", "\x{30C7}")); 123ok($objJa->eq("\x{3068}", "\x{30C8}")); 124ok($objJa->eq("\x{3069}", "\x{30C9}")); 125ok($objJa->eq("\x{306A}", "\x{30CA}")); 126ok($objJa->eq("\x{306B}", "\x{30CB}")); 127ok($objJa->eq("\x{306C}", "\x{30CC}")); 128ok($objJa->eq("\x{306D}", "\x{30CD}")); 129ok($objJa->eq("\x{306E}", "\x{30CE}")); 130ok($objJa->eq("\x{306F}", "\x{30CF}")); 131ok($objJa->eq("\x{3070}", "\x{30D0}")); 132ok($objJa->eq("\x{3071}", "\x{30D1}")); 133ok($objJa->eq("\x{3072}", "\x{30D2}")); 134ok($objJa->eq("\x{3073}", "\x{30D3}")); 135ok($objJa->eq("\x{3074}", "\x{30D4}")); 136ok($objJa->eq("\x{3075}", "\x{30D5}")); 137ok($objJa->eq("\x{3076}", "\x{30D6}")); 138ok($objJa->eq("\x{3077}", "\x{30D7}")); 139ok($objJa->eq("\x{3078}", "\x{30D8}")); 140ok($objJa->eq("\x{3079}", "\x{30D9}")); 141ok($objJa->eq("\x{307A}", "\x{30DA}")); 142ok($objJa->eq("\x{307B}", "\x{30DB}")); 143ok($objJa->eq("\x{307C}", "\x{30DC}")); 144ok($objJa->eq("\x{307D}", "\x{30DD}")); 145ok($objJa->eq("\x{307E}", "\x{30DE}")); 146ok($objJa->eq("\x{307F}", "\x{30DF}")); 147ok($objJa->eq("\x{3080}", "\x{30E0}")); 148ok($objJa->eq("\x{3081}", "\x{30E1}")); 149ok($objJa->eq("\x{3082}", "\x{30E2}")); 150ok($objJa->eq("\x{3083}", "\x{30E3}")); 151ok($objJa->eq("\x{3084}", "\x{30E4}")); 152ok($objJa->eq("\x{3085}", "\x{30E5}")); 153ok($objJa->eq("\x{3086}", "\x{30E6}")); 154ok($objJa->eq("\x{3087}", "\x{30E7}")); 155ok($objJa->eq("\x{3088}", "\x{30E8}")); 156ok($objJa->eq("\x{3089}", "\x{30E9}")); 157ok($objJa->eq("\x{308A}", "\x{30EA}")); 158ok($objJa->eq("\x{308B}", "\x{30EB}")); 159ok($objJa->eq("\x{308C}", "\x{30EC}")); 160ok($objJa->eq("\x{308D}", "\x{30ED}")); 161ok($objJa->eq("\x{308E}", "\x{30EE}")); 162ok($objJa->eq("\x{308F}", "\x{30EF}")); 163ok($objJa->eq("\x{3090}", "\x{30F0}")); 164ok($objJa->eq("\x{3091}", "\x{30F1}")); 165ok($objJa->eq("\x{3092}", "\x{30F2}")); 166ok($objJa->eq("\x{3093}", "\x{30F3}")); 167ok($objJa->eq("\x{3094}", "\x{30F4}")); 168ok($objJa->eq("\x{3095}", "\x{30F5}")); 169ok($objJa->eq("\x{3096}", "\x{30F6}")); 170ok($objJa->eq("\x{309D}", "\x{30FD}")); 171ok($objJa->eq("\x{309E}", "\x{30FE}")); 172 173# 120 174 175$objJa->change(variable => 'Non-ignorable'); 176 177ok($objJa->eq("\x{3000}", "\ ")); 178ok($objJa->eq("\x{FF01}", "\!")); 179ok($objJa->eq("\x{FF02}", "\"")); 180ok($objJa->eq("\x{FF03}", "\#")); 181ok($objJa->eq("\x{FF04}", "\$")); 182ok($objJa->eq("\x{FF05}", "\%")); 183ok($objJa->eq("\x{FF06}", "\&")); 184ok($objJa->eq("\x{FF07}", "\'")); 185ok($objJa->eq("\x{FF08}", "\(")); 186ok($objJa->eq("\x{FF09}", "\)")); 187ok($objJa->eq("\x{FF0A}", "\*")); 188ok($objJa->eq("\x{FF0B}", "\+")); 189ok($objJa->eq("\x{FF0C}", "\,")); 190ok($objJa->eq("\x{FF0D}", "\-")); 191ok($objJa->eq("\x{FF0E}", "\.")); 192ok($objJa->eq("\x{FF0F}", "\/")); 193ok($objJa->eq("\x{FF10}", "0")); 194ok($objJa->eq("\x{FF11}", "1")); 195ok($objJa->eq("\x{FF12}", "2")); 196ok($objJa->eq("\x{FF13}", "3")); 197ok($objJa->eq("\x{FF14}", "4")); 198ok($objJa->eq("\x{FF15}", "5")); 199ok($objJa->eq("\x{FF16}", "6")); 200ok($objJa->eq("\x{FF17}", "7")); 201ok($objJa->eq("\x{FF18}", "8")); 202ok($objJa->eq("\x{FF19}", "9")); 203ok($objJa->eq("\x{FF1A}", "\:")); 204ok($objJa->eq("\x{FF1B}", "\;")); 205ok($objJa->eq("\x{FF1C}", "\<")); 206ok($objJa->eq("\x{FF1D}", "\=")); 207ok($objJa->eq("\x{FF1E}", "\>")); 208ok($objJa->eq("\x{FF1F}", "\?")); 209ok($objJa->eq("\x{FF20}", "\@")); 210ok($objJa->eq("\x{FF21}", "A")); 211ok($objJa->eq("\x{FF22}", "B")); 212ok($objJa->eq("\x{FF23}", "C")); 213ok($objJa->eq("\x{FF24}", "D")); 214ok($objJa->eq("\x{FF25}", "E")); 215ok($objJa->eq("\x{FF26}", "F")); 216ok($objJa->eq("\x{FF27}", "G")); 217ok($objJa->eq("\x{FF28}", "H")); 218ok($objJa->eq("\x{FF29}", "I")); 219ok($objJa->eq("\x{FF2A}", "J")); 220ok($objJa->eq("\x{FF2B}", "K")); 221ok($objJa->eq("\x{FF2C}", "L")); 222ok($objJa->eq("\x{FF2D}", "M")); 223ok($objJa->eq("\x{FF2E}", "N")); 224ok($objJa->eq("\x{FF2F}", "O")); 225ok($objJa->eq("\x{FF30}", "P")); 226ok($objJa->eq("\x{FF31}", "Q")); 227ok($objJa->eq("\x{FF32}", "R")); 228ok($objJa->eq("\x{FF33}", "S")); 229ok($objJa->eq("\x{FF34}", "T")); 230ok($objJa->eq("\x{FF35}", "U")); 231ok($objJa->eq("\x{FF36}", "V")); 232ok($objJa->eq("\x{FF37}", "W")); 233ok($objJa->eq("\x{FF38}", "X")); 234ok($objJa->eq("\x{FF39}", "Y")); 235ok($objJa->eq("\x{FF3A}", "Z")); 236ok($objJa->eq("\x{FF3B}", "\[")); 237ok($objJa->eq("\x{FF3C}", "\'")); 238ok($objJa->eq("\x{FF3D}", "\]")); 239ok($objJa->eq("\x{FF3E}", "\^")); 240ok($objJa->eq("\x{FF3F}", "_")); 241ok($objJa->eq("\x{FF40}", "\`")); 242ok($objJa->eq("\x{FF41}", "a")); 243ok($objJa->eq("\x{FF42}", "b")); 244ok($objJa->eq("\x{FF43}", "c")); 245ok($objJa->eq("\x{FF44}", "d")); 246ok($objJa->eq("\x{FF45}", "e")); 247ok($objJa->eq("\x{FF46}", "f")); 248ok($objJa->eq("\x{FF47}", "g")); 249ok($objJa->eq("\x{FF48}", "h")); 250ok($objJa->eq("\x{FF49}", "i")); 251ok($objJa->eq("\x{FF4A}", "j")); 252ok($objJa->eq("\x{FF4B}", "k")); 253ok($objJa->eq("\x{FF4C}", "l")); 254ok($objJa->eq("\x{FF4D}", "m")); 255ok($objJa->eq("\x{FF4E}", "n")); 256ok($objJa->eq("\x{FF4F}", "o")); 257ok($objJa->eq("\x{FF50}", "p")); 258ok($objJa->eq("\x{FF51}", "q")); 259ok($objJa->eq("\x{FF52}", "r")); 260ok($objJa->eq("\x{FF53}", "s")); 261ok($objJa->eq("\x{FF54}", "t")); 262ok($objJa->eq("\x{FF55}", "u")); 263ok($objJa->eq("\x{FF56}", "v")); 264ok($objJa->eq("\x{FF57}", "w")); 265ok($objJa->eq("\x{FF58}", "x")); 266ok($objJa->eq("\x{FF59}", "y")); 267ok($objJa->eq("\x{FF5A}", "z")); 268ok($objJa->eq("\x{FF5B}", "\{")); 269ok($objJa->eq("\x{FF5C}", "\|")); 270ok($objJa->eq("\x{FF5D}", "\}")); 271ok($objJa->eq("\x{FF5E}", "\~")); 272ok($objJa->eq("\x{FF5F}", "\x{2985}")); 273ok($objJa->eq("\x{FF60}", "\x{2986}")); 274ok($objJa->eq("\x{FF61}", "\x{3002}")); 275ok($objJa->eq("\x{FF62}", "\x{300C}")); 276ok($objJa->eq("\x{FF63}", "\x{300D}")); 277ok($objJa->eq("\x{FF64}", "\x{3001}")); 278ok($objJa->eq("\x{FF65}", "\x{30FB}")); 279ok($objJa->eq("\x{FF66}", "\x{30F2}")); 280ok($objJa->eq("\x{FF67}", "\x{30A1}")); 281ok($objJa->eq("\x{FF68}", "\x{30A3}")); 282ok($objJa->eq("\x{FF69}", "\x{30A5}")); 283ok($objJa->eq("\x{FF6A}", "\x{30A7}")); 284ok($objJa->eq("\x{FF6B}", "\x{30A9}")); 285ok($objJa->eq("\x{FF6C}", "\x{30E3}")); 286ok($objJa->eq("\x{FF6D}", "\x{30E5}")); 287ok($objJa->eq("\x{FF6E}", "\x{30E7}")); 288ok($objJa->eq("\x{FF6F}", "\x{30C3}")); 289ok($objJa->eq("\x{FF70}", "\x{30FC}")); 290ok($objJa->eq("\x{FF71}", "\x{30A2}")); 291ok($objJa->eq("\x{FF72}", "\x{30A4}")); 292ok($objJa->eq("\x{FF73}", "\x{30A6}")); 293ok($objJa->eq("\x{FF74}", "\x{30A8}")); 294ok($objJa->eq("\x{FF75}", "\x{30AA}")); 295ok($objJa->eq("\x{FF76}", "\x{30AB}")); 296ok($objJa->eq("\x{FF77}", "\x{30AD}")); 297ok($objJa->eq("\x{FF78}", "\x{30AF}")); 298ok($objJa->eq("\x{FF79}", "\x{30B1}")); 299ok($objJa->eq("\x{FF7A}", "\x{30B3}")); 300ok($objJa->eq("\x{FF7B}", "\x{30B5}")); 301ok($objJa->eq("\x{FF7C}", "\x{30B7}")); 302ok($objJa->eq("\x{FF7D}", "\x{30B9}")); 303ok($objJa->eq("\x{FF7E}", "\x{30BB}")); 304ok($objJa->eq("\x{FF7F}", "\x{30BD}")); 305ok($objJa->eq("\x{FF80}", "\x{30BF}")); 306ok($objJa->eq("\x{FF81}", "\x{30C1}")); 307ok($objJa->eq("\x{FF82}", "\x{30C4}")); 308ok($objJa->eq("\x{FF83}", "\x{30C6}")); 309ok($objJa->eq("\x{FF84}", "\x{30C8}")); 310ok($objJa->eq("\x{FF85}", "\x{30CA}")); 311ok($objJa->eq("\x{FF86}", "\x{30CB}")); 312ok($objJa->eq("\x{FF87}", "\x{30CC}")); 313ok($objJa->eq("\x{FF88}", "\x{30CD}")); 314ok($objJa->eq("\x{FF89}", "\x{30CE}")); 315ok($objJa->eq("\x{FF8A}", "\x{30CF}")); 316ok($objJa->eq("\x{FF8B}", "\x{30D2}")); 317ok($objJa->eq("\x{FF8C}", "\x{30D5}")); 318ok($objJa->eq("\x{FF8D}", "\x{30D8}")); 319ok($objJa->eq("\x{FF8E}", "\x{30DB}")); 320ok($objJa->eq("\x{FF8F}", "\x{30DE}")); 321ok($objJa->eq("\x{FF90}", "\x{30DF}")); 322ok($objJa->eq("\x{FF91}", "\x{30E0}")); 323ok($objJa->eq("\x{FF92}", "\x{30E1}")); 324ok($objJa->eq("\x{FF93}", "\x{30E2}")); 325ok($objJa->eq("\x{FF94}", "\x{30E4}")); 326ok($objJa->eq("\x{FF95}", "\x{30E6}")); 327ok($objJa->eq("\x{FF96}", "\x{30E8}")); 328ok($objJa->eq("\x{FF97}", "\x{30E9}")); 329ok($objJa->eq("\x{FF98}", "\x{30EA}")); 330ok($objJa->eq("\x{FF99}", "\x{30EB}")); 331ok($objJa->eq("\x{FF9A}", "\x{30EC}")); 332ok($objJa->eq("\x{FF9B}", "\x{30ED}")); 333ok($objJa->eq("\x{FF9C}", "\x{30EF}")); 334ok($objJa->eq("\x{FF9D}", "\x{30F3}")); 335ok($objJa->eq("\x{FF9E}", "\x{3099}")); 336ok($objJa->eq("\x{FF9F}", "\x{309A}")); 337ok($objJa->eq("\x{FFE0}", _pack_U(0xA2))); 338ok($objJa->eq("\x{FFE1}", _pack_U(0xA3))); 339ok($objJa->eq("\x{FFE2}", _pack_U(0xAC))); 340ok($objJa->eq("\x{FFE3}", "\ ")); 341ok($objJa->eq("\x{FFE4}", _pack_U(0xA6))); 342ok($objJa->eq("\x{FFE5}", _pack_U(0xA5))); 343ok($objJa->eq("\x{FFE6}", "\x{20A9}")); 344ok($objJa->eq("\x{FFE8}", "\x{2502}")); 345ok($objJa->eq("\x{FFE9}", "\x{2190}")); 346ok($objJa->eq("\x{FFEA}", "\x{2191}")); 347ok($objJa->eq("\x{FFEB}", "\x{2192}")); 348ok($objJa->eq("\x{FFEC}", "\x{2193}")); 349ok($objJa->eq("\x{FFED}", "\x{25A0}")); 350ok($objJa->eq("\x{FFEE}", "\x{25CB}")); 351 352# 294 353 354$objJa->change(level => 4); 355 356ok($objJa->lt("\x{3041}", "\x{30A1}")); 357ok($objJa->lt("\x{3042}", "\x{30A2}")); 358ok($objJa->lt("\x{3043}", "\x{30A3}")); 359ok($objJa->lt("\x{3044}", "\x{30A4}")); 360ok($objJa->lt("\x{3045}", "\x{30A5}")); 361ok($objJa->lt("\x{3046}", "\x{30A6}")); 362ok($objJa->lt("\x{3047}", "\x{30A7}")); 363ok($objJa->lt("\x{3048}", "\x{30A8}")); 364ok($objJa->lt("\x{3049}", "\x{30A9}")); 365ok($objJa->lt("\x{304A}", "\x{30AA}")); 366ok($objJa->lt("\x{304B}", "\x{30AB}")); 367ok($objJa->lt("\x{304C}", "\x{30AC}")); 368ok($objJa->lt("\x{304D}", "\x{30AD}")); 369ok($objJa->lt("\x{304E}", "\x{30AE}")); 370ok($objJa->lt("\x{304F}", "\x{30AF}")); 371ok($objJa->lt("\x{3050}", "\x{30B0}")); 372ok($objJa->lt("\x{3051}", "\x{30B1}")); 373ok($objJa->lt("\x{3052}", "\x{30B2}")); 374ok($objJa->lt("\x{3053}", "\x{30B3}")); 375ok($objJa->lt("\x{3054}", "\x{30B4}")); 376ok($objJa->lt("\x{3055}", "\x{30B5}")); 377ok($objJa->lt("\x{3056}", "\x{30B6}")); 378ok($objJa->lt("\x{3057}", "\x{30B7}")); 379ok($objJa->lt("\x{3058}", "\x{30B8}")); 380ok($objJa->lt("\x{3059}", "\x{30B9}")); 381ok($objJa->lt("\x{305A}", "\x{30BA}")); 382ok($objJa->lt("\x{305B}", "\x{30BB}")); 383ok($objJa->lt("\x{305C}", "\x{30BC}")); 384ok($objJa->lt("\x{305D}", "\x{30BD}")); 385ok($objJa->lt("\x{305E}", "\x{30BE}")); 386ok($objJa->lt("\x{305F}", "\x{30BF}")); 387ok($objJa->lt("\x{3060}", "\x{30C0}")); 388ok($objJa->lt("\x{3061}", "\x{30C1}")); 389ok($objJa->lt("\x{3062}", "\x{30C2}")); 390ok($objJa->lt("\x{3063}", "\x{30C3}")); 391ok($objJa->lt("\x{3064}", "\x{30C4}")); 392ok($objJa->lt("\x{3065}", "\x{30C5}")); 393ok($objJa->lt("\x{3066}", "\x{30C6}")); 394ok($objJa->lt("\x{3067}", "\x{30C7}")); 395ok($objJa->lt("\x{3068}", "\x{30C8}")); 396ok($objJa->lt("\x{3069}", "\x{30C9}")); 397ok($objJa->lt("\x{306A}", "\x{30CA}")); 398ok($objJa->lt("\x{306B}", "\x{30CB}")); 399ok($objJa->lt("\x{306C}", "\x{30CC}")); 400ok($objJa->lt("\x{306D}", "\x{30CD}")); 401ok($objJa->lt("\x{306E}", "\x{30CE}")); 402ok($objJa->lt("\x{306F}", "\x{30CF}")); 403ok($objJa->lt("\x{3070}", "\x{30D0}")); 404ok($objJa->lt("\x{3071}", "\x{30D1}")); 405ok($objJa->lt("\x{3072}", "\x{30D2}")); 406ok($objJa->lt("\x{3073}", "\x{30D3}")); 407ok($objJa->lt("\x{3074}", "\x{30D4}")); 408ok($objJa->lt("\x{3075}", "\x{30D5}")); 409ok($objJa->lt("\x{3076}", "\x{30D6}")); 410ok($objJa->lt("\x{3077}", "\x{30D7}")); 411ok($objJa->lt("\x{3078}", "\x{30D8}")); 412ok($objJa->lt("\x{3079}", "\x{30D9}")); 413ok($objJa->lt("\x{307A}", "\x{30DA}")); 414ok($objJa->lt("\x{307B}", "\x{30DB}")); 415ok($objJa->lt("\x{307C}", "\x{30DC}")); 416ok($objJa->lt("\x{307D}", "\x{30DD}")); 417ok($objJa->lt("\x{307E}", "\x{30DE}")); 418ok($objJa->lt("\x{307F}", "\x{30DF}")); 419ok($objJa->lt("\x{3080}", "\x{30E0}")); 420ok($objJa->lt("\x{3081}", "\x{30E1}")); 421ok($objJa->lt("\x{3082}", "\x{30E2}")); 422ok($objJa->lt("\x{3083}", "\x{30E3}")); 423ok($objJa->lt("\x{3084}", "\x{30E4}")); 424ok($objJa->lt("\x{3085}", "\x{30E5}")); 425ok($objJa->lt("\x{3086}", "\x{30E6}")); 426ok($objJa->lt("\x{3087}", "\x{30E7}")); 427ok($objJa->lt("\x{3088}", "\x{30E8}")); 428ok($objJa->lt("\x{3089}", "\x{30E9}")); 429ok($objJa->lt("\x{308A}", "\x{30EA}")); 430ok($objJa->lt("\x{308B}", "\x{30EB}")); 431ok($objJa->lt("\x{308C}", "\x{30EC}")); 432ok($objJa->lt("\x{308D}", "\x{30ED}")); 433ok($objJa->lt("\x{308E}", "\x{30EE}")); 434ok($objJa->lt("\x{308F}", "\x{30EF}")); 435ok($objJa->lt("\x{3090}", "\x{30F0}")); 436ok($objJa->lt("\x{3091}", "\x{30F1}")); 437ok($objJa->lt("\x{3092}", "\x{30F2}")); 438ok($objJa->lt("\x{3093}", "\x{30F3}")); 439ok($objJa->lt("\x{3094}", "\x{30F4}")); 440ok($objJa->lt("\x{3095}", "\x{30F5}")); 441ok($objJa->lt("\x{3096}", "\x{30F6}")); 442ok($objJa->lt("\x{309D}", "\x{30FD}")); 443ok($objJa->lt("\x{309E}", "\x{30FE}")); 444 445# 382 446 447ok($objJa->eq("\x{30AC}", "\x{30AB}\x{3099}")); 448ok($objJa->eq("\x{30AE}", "\x{30AD}\x{3099}")); 449ok($objJa->eq("\x{30B0}", "\x{30AF}\x{3099}")); 450ok($objJa->eq("\x{30B2}", "\x{30B1}\x{3099}")); 451ok($objJa->eq("\x{30B4}", "\x{30B3}\x{3099}")); 452ok($objJa->eq("\x{30B6}", "\x{30B5}\x{3099}")); 453ok($objJa->eq("\x{30B8}", "\x{30B7}\x{3099}")); 454ok($objJa->eq("\x{30BA}", "\x{30B9}\x{3099}")); 455ok($objJa->eq("\x{30BC}", "\x{30BB}\x{3099}")); 456ok($objJa->eq("\x{30BE}", "\x{30BD}\x{3099}")); 457ok($objJa->eq("\x{30C0}", "\x{30BF}\x{3099}")); 458ok($objJa->eq("\x{30C2}", "\x{30C1}\x{3099}")); 459ok($objJa->eq("\x{30C5}", "\x{30C4}\x{3099}")); 460ok($objJa->eq("\x{30C7}", "\x{30C6}\x{3099}")); 461ok($objJa->eq("\x{30C9}", "\x{30C8}\x{3099}")); 462ok($objJa->eq("\x{30D0}", "\x{30CF}\x{3099}")); 463ok($objJa->eq("\x{30D1}", "\x{30CF}\x{309A}")); 464ok($objJa->eq("\x{30D3}", "\x{30D2}\x{3099}")); 465ok($objJa->eq("\x{30D4}", "\x{30D2}\x{309A}")); 466ok($objJa->eq("\x{30D6}", "\x{30D5}\x{3099}")); 467ok($objJa->eq("\x{30D7}", "\x{30D5}\x{309A}")); 468ok($objJa->eq("\x{30D9}", "\x{30D8}\x{3099}")); 469ok($objJa->eq("\x{30DA}", "\x{30D8}\x{309A}")); 470ok($objJa->eq("\x{30DC}", "\x{30DB}\x{3099}")); 471ok($objJa->eq("\x{30DD}", "\x{30DB}\x{309A}")); 472ok($objJa->eq("\x{30F4}", "\x{30A6}\x{3099}")); 473ok($objJa->eq("\x{30F7}", "\x{30EF}\x{3099}")); 474ok($objJa->eq("\x{30F8}", "\x{30F0}\x{3099}")); 475ok($objJa->eq("\x{30F9}", "\x{30F1}\x{3099}")); 476ok($objJa->eq("\x{30FA}", "\x{30F2}\x{3099}")); 477ok($objJa->eq("\x{30FE}", "\x{30FD}\x{3099}")); 478 479# 413 480 481ok($objJa->eq("\x{304C}", "\x{304B}\x{3099}")); 482ok($objJa->eq("\x{304E}", "\x{304D}\x{3099}")); 483ok($objJa->eq("\x{3050}", "\x{304F}\x{3099}")); 484ok($objJa->eq("\x{3052}", "\x{3051}\x{3099}")); 485ok($objJa->eq("\x{3054}", "\x{3053}\x{3099}")); 486ok($objJa->eq("\x{3056}", "\x{3055}\x{3099}")); 487ok($objJa->eq("\x{3058}", "\x{3057}\x{3099}")); 488ok($objJa->eq("\x{305A}", "\x{3059}\x{3099}")); 489ok($objJa->eq("\x{305C}", "\x{305B}\x{3099}")); 490ok($objJa->eq("\x{305E}", "\x{305D}\x{3099}")); 491ok($objJa->eq("\x{3060}", "\x{305F}\x{3099}")); 492ok($objJa->eq("\x{3062}", "\x{3061}\x{3099}")); 493ok($objJa->eq("\x{3065}", "\x{3064}\x{3099}")); 494ok($objJa->eq("\x{3067}", "\x{3066}\x{3099}")); 495ok($objJa->eq("\x{3069}", "\x{3068}\x{3099}")); 496ok($objJa->eq("\x{3070}", "\x{306F}\x{3099}")); 497ok($objJa->eq("\x{3071}", "\x{306F}\x{309A}")); 498ok($objJa->eq("\x{3073}", "\x{3072}\x{3099}")); 499ok($objJa->eq("\x{3074}", "\x{3072}\x{309A}")); 500ok($objJa->eq("\x{3076}", "\x{3075}\x{3099}")); 501ok($objJa->eq("\x{3077}", "\x{3075}\x{309A}")); 502ok($objJa->eq("\x{3079}", "\x{3078}\x{3099}")); 503ok($objJa->eq("\x{307A}", "\x{3078}\x{309A}")); 504ok($objJa->eq("\x{307C}", "\x{307B}\x{3099}")); 505ok($objJa->eq("\x{307D}", "\x{307B}\x{309A}")); 506ok($objJa->eq("\x{3094}", "\x{3046}\x{3099}")); 507ok($objJa->eq("\x{309E}", "\x{309D}\x{3099}")); 508 509# 440 510 511$objJa->change(katakana_before_hiragana => 1); 512 513ok($objJa->lt("\x{3041}", "\x{30A1}")); 514ok($objJa->lt("\x{3042}", "\x{30A2}")); 515ok($objJa->lt("\x{3043}", "\x{30A3}")); 516ok($objJa->lt("\x{3044}", "\x{30A4}")); 517ok($objJa->lt("\x{3045}", "\x{30A5}")); 518ok($objJa->lt("\x{3046}", "\x{30A6}")); 519ok($objJa->lt("\x{3047}", "\x{30A7}")); 520ok($objJa->lt("\x{3048}", "\x{30A8}")); 521ok($objJa->lt("\x{3049}", "\x{30A9}")); 522ok($objJa->lt("\x{304A}", "\x{30AA}")); 523ok($objJa->lt("\x{304B}", "\x{30AB}")); 524ok($objJa->lt("\x{304C}", "\x{30AC}")); 525ok($objJa->lt("\x{304D}", "\x{30AD}")); 526ok($objJa->lt("\x{304E}", "\x{30AE}")); 527ok($objJa->lt("\x{304F}", "\x{30AF}")); 528ok($objJa->lt("\x{3050}", "\x{30B0}")); 529ok($objJa->lt("\x{3051}", "\x{30B1}")); 530ok($objJa->lt("\x{3052}", "\x{30B2}")); 531ok($objJa->lt("\x{3053}", "\x{30B3}")); 532ok($objJa->lt("\x{3054}", "\x{30B4}")); 533ok($objJa->lt("\x{3055}", "\x{30B5}")); 534ok($objJa->lt("\x{3056}", "\x{30B6}")); 535ok($objJa->lt("\x{3057}", "\x{30B7}")); 536ok($objJa->lt("\x{3058}", "\x{30B8}")); 537ok($objJa->lt("\x{3059}", "\x{30B9}")); 538ok($objJa->lt("\x{305A}", "\x{30BA}")); 539ok($objJa->lt("\x{305B}", "\x{30BB}")); 540ok($objJa->lt("\x{305C}", "\x{30BC}")); 541ok($objJa->lt("\x{305D}", "\x{30BD}")); 542ok($objJa->lt("\x{305E}", "\x{30BE}")); 543ok($objJa->lt("\x{305F}", "\x{30BF}")); 544ok($objJa->lt("\x{3060}", "\x{30C0}")); 545ok($objJa->lt("\x{3061}", "\x{30C1}")); 546ok($objJa->lt("\x{3062}", "\x{30C2}")); 547ok($objJa->lt("\x{3063}", "\x{30C3}")); 548ok($objJa->lt("\x{3064}", "\x{30C4}")); 549ok($objJa->lt("\x{3065}", "\x{30C5}")); 550ok($objJa->lt("\x{3066}", "\x{30C6}")); 551ok($objJa->lt("\x{3067}", "\x{30C7}")); 552ok($objJa->lt("\x{3068}", "\x{30C8}")); 553ok($objJa->lt("\x{3069}", "\x{30C9}")); 554ok($objJa->lt("\x{306A}", "\x{30CA}")); 555ok($objJa->lt("\x{306B}", "\x{30CB}")); 556ok($objJa->lt("\x{306C}", "\x{30CC}")); 557ok($objJa->lt("\x{306D}", "\x{30CD}")); 558ok($objJa->lt("\x{306E}", "\x{30CE}")); 559ok($objJa->lt("\x{306F}", "\x{30CF}")); 560ok($objJa->lt("\x{3070}", "\x{30D0}")); 561ok($objJa->lt("\x{3071}", "\x{30D1}")); 562ok($objJa->lt("\x{3072}", "\x{30D2}")); 563ok($objJa->lt("\x{3073}", "\x{30D3}")); 564ok($objJa->lt("\x{3074}", "\x{30D4}")); 565ok($objJa->lt("\x{3075}", "\x{30D5}")); 566ok($objJa->lt("\x{3076}", "\x{30D6}")); 567ok($objJa->lt("\x{3077}", "\x{30D7}")); 568ok($objJa->lt("\x{3078}", "\x{30D8}")); 569ok($objJa->lt("\x{3079}", "\x{30D9}")); 570ok($objJa->lt("\x{307A}", "\x{30DA}")); 571ok($objJa->lt("\x{307B}", "\x{30DB}")); 572ok($objJa->lt("\x{307C}", "\x{30DC}")); 573ok($objJa->lt("\x{307D}", "\x{30DD}")); 574ok($objJa->lt("\x{307E}", "\x{30DE}")); 575ok($objJa->lt("\x{307F}", "\x{30DF}")); 576ok($objJa->lt("\x{3080}", "\x{30E0}")); 577ok($objJa->lt("\x{3081}", "\x{30E1}")); 578ok($objJa->lt("\x{3082}", "\x{30E2}")); 579ok($objJa->lt("\x{3083}", "\x{30E3}")); 580ok($objJa->lt("\x{3084}", "\x{30E4}")); 581ok($objJa->lt("\x{3085}", "\x{30E5}")); 582ok($objJa->lt("\x{3086}", "\x{30E6}")); 583ok($objJa->lt("\x{3087}", "\x{30E7}")); 584ok($objJa->lt("\x{3088}", "\x{30E8}")); 585ok($objJa->lt("\x{3089}", "\x{30E9}")); 586ok($objJa->lt("\x{308A}", "\x{30EA}")); 587ok($objJa->lt("\x{308B}", "\x{30EB}")); 588ok($objJa->lt("\x{308C}", "\x{30EC}")); 589ok($objJa->lt("\x{308D}", "\x{30ED}")); 590ok($objJa->lt("\x{308E}", "\x{30EE}")); 591ok($objJa->lt("\x{308F}", "\x{30EF}")); 592ok($objJa->lt("\x{3090}", "\x{30F0}")); 593ok($objJa->lt("\x{3091}", "\x{30F1}")); 594ok($objJa->lt("\x{3092}", "\x{30F2}")); 595ok($objJa->lt("\x{3093}", "\x{30F3}")); 596ok($objJa->lt("\x{3094}", "\x{30F4}")); 597ok($objJa->lt("\x{3095}", "\x{30F5}")); 598ok($objJa->lt("\x{3096}", "\x{30F6}")); 599ok($objJa->lt("\x{309D}", "\x{30FD}")); 600ok($objJa->lt("\x{309E}", "\x{30FE}")); 601 602# 528 603