| |
| BEGIN { |
| unless ("A" eq pack('U', 0x41)) { |
| print "1..0 # Unicode::Collate " . |
| "cannot stringify a Unicode code point\n"; |
| exit 0; |
| } |
| if ($ENV{PERL_CORE}) { |
| chdir('t') if -d 't'; |
| @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib); |
| } |
| } |
| |
| use strict; |
| use warnings; |
| BEGIN { $| = 1; print "1..424\n"; } |
| my $count = 0; |
| sub ok ($;$) { |
| my $p = my $r = shift; |
| if (@_) { |
| my $x = shift; |
| $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x; |
| } |
| print $p ? "ok" : "not ok", ' ', ++$count, "\n"; |
| } |
| |
| use Unicode::Collate::Locale; |
| |
| ok(1); |
| |
| ######################### |
| |
| my $objVi = Unicode::Collate::Locale-> |
| new(locale => 'VI', normalization => undef); |
| |
| ok($objVi->getlocale, 'vi'); |
| |
| $objVi->change(level => 1); |
| |
| ok($objVi->lt("a", "a\x{306}")); |
| ok($objVi->lt("a\x{306}", "a\x{302}")); |
| ok($objVi->gt("b", "a\x{302}")); |
| ok($objVi->lt("d", "d\x{335}")); |
| ok($objVi->gt("e", "d\x{335}")); |
| ok($objVi->lt("e", "e\x{302}")); |
| ok($objVi->gt("f", "e\x{302}")); |
| ok($objVi->lt("o", "o\x{302}")); |
| ok($objVi->lt("o\x{302}", "o\x{31B}")); |
| ok($objVi->gt("p", "o\x{31B}")); |
| ok($objVi->lt("u", "u\x{31B}")); |
| ok($objVi->gt("v", "u\x{31B}")); |
| |
| # 14 |
| |
| ok($objVi->eq("\x{300}", "\x{309}")); |
| ok($objVi->eq("\x{309}", "\x{303}")); |
| ok($objVi->eq("\x{303}", "\x{301}")); |
| ok($objVi->eq("\x{301}", "\x{323}")); |
| ok($objVi->eq("\x{323}", "\x{306}")); |
| ok($objVi->eq("\x{306}", "\x{302}")); |
| |
| ok($objVi->eq("X\x{300}", "X\x{309}")); |
| ok($objVi->eq("X\x{309}", "X\x{303}")); |
| ok($objVi->eq("X\x{303}", "X\x{301}")); |
| ok($objVi->eq("X\x{301}", "X\x{323}")); |
| ok($objVi->eq("X\x{323}", "X\x{306}")); |
| ok($objVi->eq("X\x{306}", "X\x{302}")); |
| |
| # 26 |
| |
| $objVi->change(level => 2); |
| |
| ok($objVi->lt("\x{300}", "\x{309}")); |
| ok($objVi->lt("\x{309}", "\x{303}")); |
| ok($objVi->lt("\x{303}", "\x{301}")); |
| ok($objVi->lt("\x{301}", "\x{323}")); |
| ok($objVi->lt("\x{323}", "\x{306}")); |
| ok($objVi->lt("\x{306}", "\x{302}")); |
| |
| ok($objVi->lt("X\x{300}", "X\x{309}")); |
| ok($objVi->lt("X\x{309}", "X\x{303}")); |
| ok($objVi->lt("X\x{303}", "X\x{301}")); |
| ok($objVi->lt("X\x{301}", "X\x{323}")); |
| ok($objVi->lt("X\x{323}", "X\x{306}")); |
| ok($objVi->lt("X\x{306}", "X\x{302}")); |
| |
| # 38 |
| |
| ok($objVi->eq("a\x{306}", "A\x{306}")); |
| ok($objVi->eq("a\x{302}", "A\x{302}")); |
| ok($objVi->eq("d\x{335}", "D\x{335}")); |
| ok($objVi->eq("e\x{302}", "E\x{302}")); |
| ok($objVi->eq("o\x{302}", "O\x{302}")); |
| ok($objVi->eq("o\x{31B}", "O\x{31B}")); |
| ok($objVi->eq("u\x{31B}", "U\x{31B}")); |
| |
| # 45 |
| |
| $objVi->change(level => 3); |
| |
| ok($objVi->lt("a\x{306}", "A\x{306}")); |
| ok($objVi->lt("a\x{302}", "A\x{302}")); |
| ok($objVi->lt("d\x{335}", "D\x{335}")); |
| ok($objVi->lt("e\x{302}", "E\x{302}")); |
| ok($objVi->lt("o\x{302}", "O\x{302}")); |
| ok($objVi->lt("o\x{31B}", "O\x{31B}")); |
| ok($objVi->lt("u\x{31B}", "U\x{31B}")); |
| |
| # 52 |
| |
| ok($objVi->eq("a\x{306}", "\x{103}")); |
| ok($objVi->eq("A\x{306}", "\x{102}")); |
| ok($objVi->eq("a\x{302}", pack('U', 0xE2))); |
| ok($objVi->eq("A\x{302}", pack('U', 0xC2))); |
| ok($objVi->eq("d\x{335}", "\x{111}")); |
| ok($objVi->eq("D\x{335}", "\x{110}")); |
| ok($objVi->eq("e\x{302}", pack('U', 0xEA))); |
| ok($objVi->eq("E\x{302}", pack('U', 0xCA))); |
| ok($objVi->eq("o\x{302}", pack('U', 0xF4))); |
| ok($objVi->eq("O\x{302}", pack('U', 0xD4))); |
| ok($objVi->eq("o\x{31B}", "\x{1A1}")); |
| ok($objVi->eq("O\x{31B}", "\x{1A0}")); |
| ok($objVi->eq("u\x{31B}", "\x{1B0}")); |
| ok($objVi->eq("U\x{31B}", "\x{1AF}")); |
| |
| # 66 |
| |
| ok($objVi->eq("e\x{306}", "\x{115}")); |
| ok($objVi->eq("E\x{306}", "\x{114}")); |
| ok($objVi->eq("i\x{306}", "\x{12D}")); |
| ok($objVi->eq("I\x{306}", "\x{12C}")); |
| ok($objVi->eq("o\x{306}", "\x{14F}")); |
| ok($objVi->eq("O\x{306}", "\x{14E}")); |
| ok($objVi->eq("u\x{306}", "\x{16D}")); |
| ok($objVi->eq("U\x{306}", "\x{16C}")); |
| |
| # 74 |
| |
| ok($objVi->eq("a\x{300}", pack('U', 0xE0))); |
| ok($objVi->eq("a\x{340}", pack('U', 0xE0))); |
| ok($objVi->eq("a\x{309}", "\x{1EA3}")); |
| ok($objVi->eq("a\x{303}", pack('U', 0xE3))); |
| ok($objVi->eq("a\x{301}", pack('U', 0xE1))); |
| ok($objVi->eq("a\x{341}", pack('U', 0xE1))); |
| ok($objVi->eq("a\x{323}", "\x{1EA1}")); |
| ok($objVi->eq("A\x{300}", pack('U', 0xC0))); |
| ok($objVi->eq("A\x{340}", pack('U', 0xC0))); |
| ok($objVi->eq("A\x{309}", "\x{1EA2}")); |
| ok($objVi->eq("A\x{303}", pack('U', 0xC3))); |
| ok($objVi->eq("A\x{301}", pack('U', 0xC1))); |
| ok($objVi->eq("A\x{341}", pack('U', 0xC1))); |
| ok($objVi->eq("A\x{323}", "\x{1EA0}")); |
| ok($objVi->eq("a\x{306}\x{300}", "\x{1EB1}")); |
| ok($objVi->eq("a\x{306}\x{340}", "\x{1EB1}")); |
| ok($objVi->eq("a\x{306}\x{309}", "\x{1EB3}")); |
| ok($objVi->eq("a\x{306}\x{303}", "\x{1EB5}")); |
| ok($objVi->eq("a\x{306}\x{301}", "\x{1EAF}")); |
| ok($objVi->eq("a\x{306}\x{341}", "\x{1EAF}")); |
| ok($objVi->eq("a\x{306}\x{323}", "\x{1EB7}")); |
| ok($objVi->eq("A\x{306}\x{300}", "\x{1EB0}")); |
| ok($objVi->eq("A\x{306}\x{340}", "\x{1EB0}")); |
| ok($objVi->eq("A\x{306}\x{309}", "\x{1EB2}")); |
| ok($objVi->eq("A\x{306}\x{303}", "\x{1EB4}")); |
| ok($objVi->eq("A\x{306}\x{301}", "\x{1EAE}")); |
| ok($objVi->eq("A\x{306}\x{341}", "\x{1EAE}")); |
| ok($objVi->eq("A\x{306}\x{323}", "\x{1EB6}")); |
| ok($objVi->eq("a\x{302}\x{300}", "\x{1EA7}")); |
| ok($objVi->eq("a\x{302}\x{340}", "\x{1EA7}")); |
| ok($objVi->eq("a\x{302}\x{309}", "\x{1EA9}")); |
| ok($objVi->eq("a\x{302}\x{303}", "\x{1EAB}")); |
| ok($objVi->eq("a\x{302}\x{301}", "\x{1EA5}")); |
| ok($objVi->eq("a\x{302}\x{341}", "\x{1EA5}")); |
| ok($objVi->eq("a\x{302}\x{323}", "\x{1EAD}")); |
| ok($objVi->eq("A\x{302}\x{300}", "\x{1EA6}")); |
| ok($objVi->eq("A\x{302}\x{340}", "\x{1EA6}")); |
| ok($objVi->eq("A\x{302}\x{309}", "\x{1EA8}")); |
| ok($objVi->eq("A\x{302}\x{303}", "\x{1EAA}")); |
| ok($objVi->eq("A\x{302}\x{301}", "\x{1EA4}")); |
| ok($objVi->eq("A\x{302}\x{341}", "\x{1EA4}")); |
| ok($objVi->eq("A\x{302}\x{323}", "\x{1EAC}")); |
| ok($objVi->eq("e\x{300}", pack('U', 0xE8))); |
| ok($objVi->eq("e\x{340}", pack('U', 0xE8))); |
| ok($objVi->eq("e\x{309}", "\x{1EBB}")); |
| ok($objVi->eq("e\x{303}", "\x{1EBD}")); |
| ok($objVi->eq("e\x{301}", pack('U', 0xE9))); |
| ok($objVi->eq("e\x{341}", pack('U', 0xE9))); |
| ok($objVi->eq("e\x{323}", "\x{1EB9}")); |
| ok($objVi->eq("E\x{300}", pack('U', 0xC8))); |
| ok($objVi->eq("E\x{340}", pack('U', 0xC8))); |
| ok($objVi->eq("E\x{309}", "\x{1EBA}")); |
| ok($objVi->eq("E\x{303}", "\x{1EBC}")); |
| ok($objVi->eq("E\x{301}", pack('U', 0xC9))); |
| ok($objVi->eq("E\x{341}", pack('U', 0xC9))); |
| ok($objVi->eq("E\x{323}", "\x{1EB8}")); |
| ok($objVi->eq("e\x{302}\x{300}", "\x{1EC1}")); |
| ok($objVi->eq("e\x{302}\x{340}", "\x{1EC1}")); |
| ok($objVi->eq("e\x{302}\x{309}", "\x{1EC3}")); |
| ok($objVi->eq("e\x{302}\x{303}", "\x{1EC5}")); |
| ok($objVi->eq("e\x{302}\x{301}", "\x{1EBF}")); |
| ok($objVi->eq("e\x{302}\x{341}", "\x{1EBF}")); |
| ok($objVi->eq("e\x{302}\x{323}", "\x{1EC7}")); |
| ok($objVi->eq("E\x{302}\x{300}", "\x{1EC0}")); |
| ok($objVi->eq("E\x{302}\x{340}", "\x{1EC0}")); |
| ok($objVi->eq("E\x{302}\x{309}", "\x{1EC2}")); |
| ok($objVi->eq("E\x{302}\x{303}", "\x{1EC4}")); |
| ok($objVi->eq("E\x{302}\x{301}", "\x{1EBE}")); |
| ok($objVi->eq("E\x{302}\x{341}", "\x{1EBE}")); |
| ok($objVi->eq("E\x{302}\x{323}", "\x{1EC6}")); |
| ok($objVi->eq("i\x{300}", pack('U', 0xEC))); |
| ok($objVi->eq("i\x{340}", pack('U', 0xEC))); |
| ok($objVi->eq("i\x{309}", "\x{1EC9}")); |
| ok($objVi->eq("i\x{303}", "\x{129}")); |
| ok($objVi->eq("i\x{301}", pack('U', 0xED))); |
| ok($objVi->eq("i\x{341}", pack('U', 0xED))); |
| ok($objVi->eq("i\x{323}", "\x{1ECB}")); |
| ok($objVi->eq("I\x{300}", pack('U', 0xCC))); |
| ok($objVi->eq("I\x{340}", pack('U', 0xCC))); |
| ok($objVi->eq("I\x{309}", "\x{1EC8}")); |
| ok($objVi->eq("I\x{303}", "\x{128}")); |
| ok($objVi->eq("I\x{301}", pack('U', 0xCD))); |
| ok($objVi->eq("I\x{341}", pack('U', 0xCD))); |
| ok($objVi->eq("I\x{323}", "\x{1ECA}")); |
| ok($objVi->eq("o\x{300}", pack('U', 0xF2))); |
| ok($objVi->eq("o\x{340}", pack('U', 0xF2))); |
| ok($objVi->eq("o\x{309}", "\x{1ECF}")); |
| ok($objVi->eq("o\x{303}", pack('U', 0xF5))); |
| ok($objVi->eq("o\x{301}", pack('U', 0xF3))); |
| ok($objVi->eq("o\x{341}", pack('U', 0xF3))); |
| ok($objVi->eq("o\x{323}", "\x{1ECD}")); |
| ok($objVi->eq("O\x{300}", pack('U', 0xD2))); |
| ok($objVi->eq("O\x{340}", pack('U', 0xD2))); |
| ok($objVi->eq("O\x{309}", "\x{1ECE}")); |
| ok($objVi->eq("O\x{303}", pack('U', 0xD5))); |
| ok($objVi->eq("O\x{301}", pack('U', 0xD3))); |
| ok($objVi->eq("O\x{341}", pack('U', 0xD3))); |
| ok($objVi->eq("O\x{323}", "\x{1ECC}")); |
| ok($objVi->eq("o\x{302}\x{300}", "\x{1ED3}")); |
| ok($objVi->eq("o\x{302}\x{340}", "\x{1ED3}")); |
| ok($objVi->eq("o\x{302}\x{309}", "\x{1ED5}")); |
| ok($objVi->eq("o\x{302}\x{303}", "\x{1ED7}")); |
| ok($objVi->eq("o\x{302}\x{301}", "\x{1ED1}")); |
| ok($objVi->eq("o\x{302}\x{341}", "\x{1ED1}")); |
| ok($objVi->eq("o\x{302}\x{323}", "\x{1ED9}")); |
| ok($objVi->eq("O\x{302}\x{300}", "\x{1ED2}")); |
| ok($objVi->eq("O\x{302}\x{340}", "\x{1ED2}")); |
| ok($objVi->eq("O\x{302}\x{309}", "\x{1ED4}")); |
| ok($objVi->eq("O\x{302}\x{303}", "\x{1ED6}")); |
| ok($objVi->eq("O\x{302}\x{301}", "\x{1ED0}")); |
| ok($objVi->eq("O\x{302}\x{341}", "\x{1ED0}")); |
| ok($objVi->eq("O\x{302}\x{323}", "\x{1ED8}")); |
| ok($objVi->eq("o\x{31B}\x{300}", "\x{1EDD}")); |
| ok($objVi->eq("o\x{31B}\x{340}", "\x{1EDD}")); |
| ok($objVi->eq("o\x{31B}\x{309}", "\x{1EDF}")); |
| ok($objVi->eq("o\x{31B}\x{303}", "\x{1EE1}")); |
| ok($objVi->eq("o\x{31B}\x{301}", "\x{1EDB}")); |
| ok($objVi->eq("o\x{31B}\x{341}", "\x{1EDB}")); |
| ok($objVi->eq("o\x{31B}\x{323}", "\x{1EE3}")); |
| ok($objVi->eq("O\x{31B}\x{300}", "\x{1EDC}")); |
| ok($objVi->eq("O\x{31B}\x{340}", "\x{1EDC}")); |
| ok($objVi->eq("O\x{31B}\x{309}", "\x{1EDE}")); |
| ok($objVi->eq("O\x{31B}\x{303}", "\x{1EE0}")); |
| ok($objVi->eq("O\x{31B}\x{301}", "\x{1EDA}")); |
| ok($objVi->eq("O\x{31B}\x{341}", "\x{1EDA}")); |
| ok($objVi->eq("O\x{31B}\x{323}", "\x{1EE2}")); |
| ok($objVi->eq("u\x{300}", pack('U', 0xF9))); |
| ok($objVi->eq("u\x{340}", pack('U', 0xF9))); |
| ok($objVi->eq("u\x{309}", "\x{1EE7}")); |
| ok($objVi->eq("u\x{303}", "\x{169}")); |
| ok($objVi->eq("u\x{301}", pack('U', 0xFA))); |
| ok($objVi->eq("u\x{341}", pack('U', 0xFA))); |
| ok($objVi->eq("u\x{323}", "\x{1EE5}")); |
| ok($objVi->eq("U\x{300}", pack('U', 0xD9))); |
| ok($objVi->eq("U\x{340}", pack('U', 0xD9))); |
| ok($objVi->eq("U\x{309}", "\x{1EE6}")); |
| ok($objVi->eq("U\x{303}", "\x{168}")); |
| ok($objVi->eq("U\x{301}", pack('U', 0xDA))); |
| ok($objVi->eq("U\x{341}", pack('U', 0xDA))); |
| ok($objVi->eq("U\x{323}", "\x{1EE4}")); |
| ok($objVi->eq("u\x{31B}\x{300}", "\x{1EEB}")); |
| ok($objVi->eq("u\x{31B}\x{340}", "\x{1EEB}")); |
| ok($objVi->eq("u\x{31B}\x{309}", "\x{1EED}")); |
| ok($objVi->eq("u\x{31B}\x{303}", "\x{1EEF}")); |
| ok($objVi->eq("u\x{31B}\x{301}", "\x{1EE9}")); |
| ok($objVi->eq("u\x{31B}\x{341}", "\x{1EE9}")); |
| ok($objVi->eq("u\x{31B}\x{323}", "\x{1EF1}")); |
| ok($objVi->eq("U\x{31B}\x{300}", "\x{1EEA}")); |
| ok($objVi->eq("U\x{31B}\x{340}", "\x{1EEA}")); |
| ok($objVi->eq("U\x{31B}\x{309}", "\x{1EEC}")); |
| ok($objVi->eq("U\x{31B}\x{303}", "\x{1EEE}")); |
| ok($objVi->eq("U\x{31B}\x{301}", "\x{1EE8}")); |
| ok($objVi->eq("U\x{31B}\x{341}", "\x{1EE8}")); |
| ok($objVi->eq("U\x{31B}\x{323}", "\x{1EF0}")); |
| ok($objVi->eq("y\x{300}", "\x{1EF3}")); |
| ok($objVi->eq("y\x{340}", "\x{1EF3}")); |
| ok($objVi->eq("y\x{309}", "\x{1EF7}")); |
| ok($objVi->eq("y\x{303}", "\x{1EF9}")); |
| ok($objVi->eq("y\x{301}", pack('U', 0xFD))); |
| ok($objVi->eq("y\x{341}", pack('U', 0xFD))); |
| ok($objVi->eq("y\x{323}", "\x{1EF5}")); |
| ok($objVi->eq("Y\x{300}", "\x{1EF2}")); |
| ok($objVi->eq("Y\x{340}", "\x{1EF2}")); |
| ok($objVi->eq("Y\x{309}", "\x{1EF6}")); |
| ok($objVi->eq("Y\x{303}", "\x{1EF8}")); |
| ok($objVi->eq("Y\x{301}", pack('U', 0xDD))); |
| ok($objVi->eq("Y\x{341}", pack('U', 0xDD))); |
| ok($objVi->eq("Y\x{323}", "\x{1EF4}")); |
| |
| # 242 |
| |
| ok($objVi->eq("a\x{306}\x{323}", "\x{1EA1}\x{306}")); |
| ok($objVi->eq("A\x{306}\x{323}", "\x{1EA0}\x{306}")); |
| ok($objVi->eq("a\x{302}\x{323}", "\x{1EA1}\x{302}")); |
| ok($objVi->eq("A\x{302}\x{323}", "\x{1EA0}\x{302}")); |
| ok($objVi->eq("e\x{302}\x{323}", "\x{1EB9}\x{302}")); |
| ok($objVi->eq("E\x{302}\x{323}", "\x{1EB8}\x{302}")); |
| ok($objVi->eq("o\x{302}\x{323}", "\x{1ECD}\x{302}")); |
| ok($objVi->eq("O\x{302}\x{323}", "\x{1ECC}\x{302}")); |
| ok($objVi->eq("o\x{31B}\x{300}", pack('U*', 0xF2, 0x31B))); |
| ok($objVi->eq("o\x{31B}\x{340}", pack('U*', 0xF2, 0x31B))); |
| ok($objVi->eq("o\x{31B}\x{309}", "\x{1ECF}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{303}", pack('U*', 0xF5, 0x31B))); |
| ok($objVi->eq("o\x{31B}\x{301}", pack('U*', 0xF3, 0x31B))); |
| ok($objVi->eq("o\x{31B}\x{341}", pack('U*', 0xF3, 0x31B))); |
| ok($objVi->eq("o\x{31B}\x{323}", "\x{1ECD}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{300}", pack('U*', 0xD2, 0x31B))); |
| ok($objVi->eq("O\x{31B}\x{340}", pack('U*', 0xD2, 0x31B))); |
| ok($objVi->eq("O\x{31B}\x{309}", "\x{1ECE}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{303}", pack('U*', 0xD5, 0x31B))); |
| ok($objVi->eq("O\x{31B}\x{301}", pack('U*', 0xD3, 0x31B))); |
| ok($objVi->eq("O\x{31B}\x{341}", pack('U*', 0xD3, 0x31B))); |
| ok($objVi->eq("O\x{31B}\x{323}", "\x{1ECC}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{300}", pack('U*', 0xF9, 0x31B))); |
| ok($objVi->eq("u\x{31B}\x{340}", pack('U*', 0xF9, 0x31B))); |
| ok($objVi->eq("u\x{31B}\x{309}", "\x{1EE7}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{303}", "\x{169}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{301}", pack('U*', 0xFA, 0x31B))); |
| ok($objVi->eq("u\x{31B}\x{341}", pack('U*', 0xFA, 0x31B))); |
| ok($objVi->eq("u\x{31B}\x{323}", "\x{1EE5}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{300}", pack('U*', 0xD9, 0x31B))); |
| ok($objVi->eq("U\x{31B}\x{340}", pack('U*', 0xD9, 0x31B))); |
| ok($objVi->eq("U\x{31B}\x{309}", "\x{1EE6}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{303}", "\x{168}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{301}", pack('U*', 0xDA, 0x31B))); |
| ok($objVi->eq("U\x{31B}\x{341}", pack('U*', 0xDA, 0x31B))); |
| ok($objVi->eq("U\x{31B}\x{323}", "\x{1EE4}\x{31B}")); |
| |
| # 278 |
| |
| ok($objVi->eq("a\x{306}\x{323}", "a\x{323}\x{306}")); |
| ok($objVi->eq("A\x{306}\x{323}", "A\x{323}\x{306}")); |
| ok($objVi->eq("a\x{302}\x{323}", "a\x{323}\x{302}")); |
| ok($objVi->eq("A\x{302}\x{323}", "A\x{323}\x{302}")); |
| ok($objVi->eq("e\x{302}\x{323}", "e\x{323}\x{302}")); |
| ok($objVi->eq("E\x{302}\x{323}", "E\x{323}\x{302}")); |
| ok($objVi->eq("o\x{302}\x{323}", "o\x{323}\x{302}")); |
| ok($objVi->eq("O\x{302}\x{323}", "O\x{323}\x{302}")); |
| ok($objVi->eq("o\x{31B}\x{300}", "o\x{300}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{340}", "o\x{340}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{309}", "o\x{309}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{303}", "o\x{303}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{301}", "o\x{301}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{341}", "o\x{341}\x{31B}")); |
| ok($objVi->eq("o\x{31B}\x{323}", "o\x{323}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{300}", "O\x{300}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{340}", "O\x{340}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{309}", "O\x{309}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{303}", "O\x{303}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{301}", "O\x{301}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{341}", "O\x{341}\x{31B}")); |
| ok($objVi->eq("O\x{31B}\x{323}", "O\x{323}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{300}", "u\x{300}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{340}", "u\x{340}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{309}", "u\x{309}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{303}", "u\x{303}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{301}", "u\x{301}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{341}", "u\x{341}\x{31B}")); |
| ok($objVi->eq("u\x{31B}\x{323}", "u\x{323}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{300}", "U\x{300}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{340}", "U\x{340}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{309}", "U\x{309}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{303}", "U\x{303}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{301}", "U\x{301}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{341}", "U\x{341}\x{31B}")); |
| ok($objVi->eq("U\x{31B}\x{323}", "U\x{323}\x{31B}")); |
| |
| # 314 |
| |
| ok($objVi->eq("a\x{306}\x{300}", "\x{103}\x{300}")); |
| ok($objVi->eq("a\x{306}\x{340}", "\x{103}\x{340}")); |
| ok($objVi->eq("a\x{306}\x{309}", "\x{103}\x{309}")); |
| ok($objVi->eq("a\x{306}\x{303}", "\x{103}\x{303}")); |
| ok($objVi->eq("a\x{306}\x{301}", "\x{103}\x{301}")); |
| ok($objVi->eq("a\x{306}\x{341}", "\x{103}\x{341}")); |
| ok($objVi->eq("a\x{306}\x{323}", "\x{103}\x{323}")); |
| ok($objVi->eq("A\x{306}\x{300}", "\x{102}\x{300}")); |
| ok($objVi->eq("A\x{306}\x{340}", "\x{102}\x{340}")); |
| ok($objVi->eq("A\x{306}\x{309}", "\x{102}\x{309}")); |
| ok($objVi->eq("A\x{306}\x{303}", "\x{102}\x{303}")); |
| ok($objVi->eq("A\x{306}\x{301}", "\x{102}\x{301}")); |
| ok($objVi->eq("A\x{306}\x{341}", "\x{102}\x{341}")); |
| ok($objVi->eq("A\x{306}\x{323}", "\x{102}\x{323}")); |
| ok($objVi->eq("a\x{302}\x{300}", pack('U*', 0xE2, 0x300))); |
| ok($objVi->eq("a\x{302}\x{340}", pack('U*', 0xE2, 0x340))); |
| ok($objVi->eq("a\x{302}\x{309}", pack('U*', 0xE2, 0x309))); |
| ok($objVi->eq("a\x{302}\x{303}", pack('U*', 0xE2, 0x303))); |
| ok($objVi->eq("a\x{302}\x{301}", pack('U*', 0xE2, 0x301))); |
| ok($objVi->eq("a\x{302}\x{341}", pack('U*', 0xE2, 0x341))); |
| ok($objVi->eq("a\x{302}\x{323}", pack('U*', 0xE2, 0x323))); |
| ok($objVi->eq("A\x{302}\x{300}", pack('U*', 0xC2, 0x300))); |
| ok($objVi->eq("A\x{302}\x{340}", pack('U*', 0xC2, 0x340))); |
| ok($objVi->eq("A\x{302}\x{309}", pack('U*', 0xC2, 0x309))); |
| ok($objVi->eq("A\x{302}\x{303}", pack('U*', 0xC2, 0x303))); |
| ok($objVi->eq("A\x{302}\x{301}", pack('U*', 0xC2, 0x301))); |
| ok($objVi->eq("A\x{302}\x{341}", pack('U*', 0xC2, 0x341))); |
| ok($objVi->eq("A\x{302}\x{323}", pack('U*', 0xC2, 0x323))); |
| ok($objVi->eq("e\x{302}\x{300}", pack('U*', 0xEA, 0x300))); |
| ok($objVi->eq("e\x{302}\x{340}", pack('U*', 0xEA, 0x340))); |
| ok($objVi->eq("e\x{302}\x{309}", pack('U*', 0xEA, 0x309))); |
| ok($objVi->eq("e\x{302}\x{303}", pack('U*', 0xEA, 0x303))); |
| ok($objVi->eq("e\x{302}\x{301}", pack('U*', 0xEA, 0x301))); |
| ok($objVi->eq("e\x{302}\x{341}", pack('U*', 0xEA, 0x341))); |
| ok($objVi->eq("e\x{302}\x{323}", pack('U*', 0xEA, 0x323))); |
| ok($objVi->eq("E\x{302}\x{300}", pack('U*', 0xCA, 0x300))); |
| ok($objVi->eq("E\x{302}\x{340}", pack('U*', 0xCA, 0x340))); |
| ok($objVi->eq("E\x{302}\x{309}", pack('U*', 0xCA, 0x309))); |
| ok($objVi->eq("E\x{302}\x{303}", pack('U*', 0xCA, 0x303))); |
| ok($objVi->eq("E\x{302}\x{301}", pack('U*', 0xCA, 0x301))); |
| ok($objVi->eq("E\x{302}\x{341}", pack('U*', 0xCA, 0x341))); |
| ok($objVi->eq("E\x{302}\x{323}", pack('U*', 0xCA, 0x323))); |
| ok($objVi->eq("o\x{302}\x{300}", pack('U*', 0xF4, 0x300))); |
| ok($objVi->eq("o\x{302}\x{340}", pack('U*', 0xF4, 0x340))); |
| ok($objVi->eq("o\x{302}\x{309}", pack('U*', 0xF4, 0x309))); |
| ok($objVi->eq("o\x{302}\x{303}", pack('U*', 0xF4, 0x303))); |
| ok($objVi->eq("o\x{302}\x{301}", pack('U*', 0xF4, 0x301))); |
| ok($objVi->eq("o\x{302}\x{341}", pack('U*', 0xF4, 0x341))); |
| ok($objVi->eq("o\x{302}\x{323}", pack('U*', 0xF4, 0x323))); |
| ok($objVi->eq("O\x{302}\x{300}", pack('U*', 0xD4, 0x300))); |
| ok($objVi->eq("O\x{302}\x{340}", pack('U*', 0xD4, 0x340))); |
| ok($objVi->eq("O\x{302}\x{309}", pack('U*', 0xD4, 0x309))); |
| ok($objVi->eq("O\x{302}\x{303}", pack('U*', 0xD4, 0x303))); |
| ok($objVi->eq("O\x{302}\x{301}", pack('U*', 0xD4, 0x301))); |
| ok($objVi->eq("O\x{302}\x{341}", pack('U*', 0xD4, 0x341))); |
| ok($objVi->eq("O\x{302}\x{323}", pack('U*', 0xD4, 0x323))); |
| ok($objVi->eq("o\x{31B}\x{300}", "\x{1A1}\x{300}")); |
| ok($objVi->eq("o\x{31B}\x{340}", "\x{1A1}\x{340}")); |
| ok($objVi->eq("o\x{31B}\x{309}", "\x{1A1}\x{309}")); |
| ok($objVi->eq("o\x{31B}\x{303}", "\x{1A1}\x{303}")); |
| ok($objVi->eq("o\x{31B}\x{301}", "\x{1A1}\x{301}")); |
| ok($objVi->eq("o\x{31B}\x{341}", "\x{1A1}\x{341}")); |
| ok($objVi->eq("o\x{31B}\x{323}", "\x{1A1}\x{323}")); |
| ok($objVi->eq("O\x{31B}\x{300}", "\x{1A0}\x{300}")); |
| ok($objVi->eq("O\x{31B}\x{340}", "\x{1A0}\x{340}")); |
| ok($objVi->eq("O\x{31B}\x{309}", "\x{1A0}\x{309}")); |
| ok($objVi->eq("O\x{31B}\x{303}", "\x{1A0}\x{303}")); |
| ok($objVi->eq("O\x{31B}\x{301}", "\x{1A0}\x{301}")); |
| ok($objVi->eq("O\x{31B}\x{341}", "\x{1A0}\x{341}")); |
| ok($objVi->eq("O\x{31B}\x{323}", "\x{1A0}\x{323}")); |
| ok($objVi->eq("u\x{31B}\x{300}", "\x{1B0}\x{300}")); |
| ok($objVi->eq("u\x{31B}\x{340}", "\x{1B0}\x{340}")); |
| ok($objVi->eq("u\x{31B}\x{309}", "\x{1B0}\x{309}")); |
| ok($objVi->eq("u\x{31B}\x{303}", "\x{1B0}\x{303}")); |
| ok($objVi->eq("u\x{31B}\x{301}", "\x{1B0}\x{301}")); |
| ok($objVi->eq("u\x{31B}\x{341}", "\x{1B0}\x{341}")); |
| ok($objVi->eq("u\x{31B}\x{323}", "\x{1B0}\x{323}")); |
| ok($objVi->eq("U\x{31B}\x{300}", "\x{1AF}\x{300}")); |
| ok($objVi->eq("U\x{31B}\x{340}", "\x{1AF}\x{340}")); |
| ok($objVi->eq("U\x{31B}\x{309}", "\x{1AF}\x{309}")); |
| ok($objVi->eq("U\x{31B}\x{303}", "\x{1AF}\x{303}")); |
| ok($objVi->eq("U\x{31B}\x{301}", "\x{1AF}\x{301}")); |
| ok($objVi->eq("U\x{31B}\x{341}", "\x{1AF}\x{341}")); |
| ok($objVi->eq("U\x{31B}\x{323}", "\x{1AF}\x{323}")); |
| |
| # 398 |
| |
| $objVi->change(normalization => undef); |
| |
| ok($objVi->index("a\x{306}\x{323}", "a\x{323}\x{306}"), 0); |
| ok($objVi->index("o\x{31B}\x{300}", "o\x{300}\x{31B}"), 0); |
| ok($objVi->index("o\x{31B}\x{300}", "o\x{340}\x{31B}"), 0); |
| ok($objVi->index("o\x{31B}\x{301}", "o\x{301}\x{31B}"), 0); |
| ok($objVi->index("o\x{31B}\x{301}", "o\x{341}\x{31B}"), 0); |
| ok($objVi->index("a\x{306}\x{323}", pack('U*', 0x1EA1, 0x306)), 0); |
| ok($objVi->index("o\x{31B}\x{300}", pack('U*', 0x00F2, 0x31B)), 0); |
| |
| ok($objVi->index("A\x{306}\x{323}", "a\x{323}\x{306}"), -1); |
| ok($objVi->index("O\x{31B}\x{300}", "o\x{300}\x{31B}"), -1); |
| ok($objVi->index("A\x{306}\x{323}", pack('U*', 0x1EA1, 0x306)), -1); |
| ok($objVi->index("O\x{31B}\x{300}", pack('U*', 0x00F2, 0x31B)), -1); |
| |
| # 409 |
| |
| $objVi->change(level => 2); |
| |
| ok($objVi->index("A\x{306}\x{323}", "a\x{323}\x{306}"), 0); |
| ok($objVi->index("O\x{31B}\x{300}", "o\x{300}\x{31B}"), 0); |
| ok($objVi->index("O\x{31B}\x{300}", "o\x{340}\x{31B}"), 0); |
| ok($objVi->index("O\x{31B}\x{301}", "o\x{301}\x{31B}"), 0); |
| ok($objVi->index("O\x{31B}\x{301}", "o\x{341}\x{31B}"), 0); |
| ok($objVi->index("A\x{306}\x{323}", pack('U*', 0x1EA1, 0x306)), 0); |
| ok($objVi->index("O\x{31B}\x{300}", pack('U*', 0x00F2, 0x31B)), 0); |
| |
| ok($objVi->index("A\x{306}", "a\x{323}\x{306}"), -1); |
| ok($objVi->index("O\x{31B}", "o\x{300}\x{31B}"), -1); |
| ok($objVi->index("A\x{306}", pack('U*', 0x1EA1, 0x306)), -1); |
| ok($objVi->index("O\x{31B}", pack('U*', 0x00F2, 0x31B)), -1); |
| |
| # 420 |
| |
| $objVi->change(level => 1); |
| |
| ok($objVi->index("A\x{306}", "a\x{323}\x{306}"), 0); |
| ok($objVi->index("O\x{31B}", "o\x{300}\x{31B}"), 0); |
| ok($objVi->index("A\x{306}", pack('U*', 0x1EA1, 0x306)), 0); |
| ok($objVi->index("O\x{31B}", pack('U*', 0x00F2, 0x31B)), 0); |
| |
| # 424 |