3 unless ("A" eq pack('U', 0x41)) {
4 print "1..0 # Unicode::Collate " .
5 "cannot stringify a Unicode code point\n";
10 @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib);
15 BEGIN { plan tests => 130 };
19 use Unicode::Collate::Locale;
23 #########################
25 my $objSr = Unicode::Collate::Locale->
26 new(locale => 'SR', normalization => undef);
28 ok($objSr->getlocale, 'sr');
30 $objSr->change(level => 1);
32 ok($objSr->gt("\x{4E5}", "\x{438}"));
33 ok($objSr->gt("\x{4E4}", "\x{418}"));
34 ok($objSr->gt("\x{439}", "\x{438}"));
35 ok($objSr->gt("\x{419}", "\x{418}"));
39 ok($objSr->eq("\x{4D1}", "\x{430}"));
40 ok($objSr->eq("\x{4D0}", "\x{410}"));
41 ok($objSr->eq("\x{4D3}", "\x{430}"));
42 ok($objSr->eq("\x{4D2}", "\x{410}"));
43 ok($objSr->eq("\x{453}", "\x{433}"));
44 ok($objSr->eq("\x{403}", "\x{413}"));
45 ok($objSr->eq("\x{4D7}", "\x{435}"));
46 ok($objSr->eq("\x{4D6}", "\x{415}"));
47 ok($objSr->eq("\x{4DD}", "\x{436}"));
48 ok($objSr->eq("\x{4DC}", "\x{416}"));
49 ok($objSr->eq("\x{4DF}", "\x{437}"));
50 ok($objSr->eq("\x{4DE}", "\x{417}"));
51 ok($objSr->eq("\x{457}", "\x{456}"));
52 ok($objSr->eq("\x{407}", "\x{406}"));
53 ok($objSr->eq("\x{4E7}", "\x{43E}"));
54 ok($objSr->eq("\x{4E6}", "\x{41E}"));
55 ok($objSr->eq("\x{45C}", "\x{43A}"));
56 ok($objSr->eq("\x{40C}", "\x{41A}"));
57 ok($objSr->eq("\x{45E}", "\x{443}"));
58 ok($objSr->eq("\x{40E}", "\x{423}"));
59 ok($objSr->eq("\x{4F1}", "\x{443}"));
60 ok($objSr->eq("\x{4F0}", "\x{423}"));
61 ok($objSr->eq("\x{4F3}", "\x{443}"));
62 ok($objSr->eq("\x{4F2}", "\x{423}"));
63 ok($objSr->eq("\x{4F5}", "\x{447}"));
64 ok($objSr->eq("\x{4F4}", "\x{427}"));
65 ok($objSr->eq("\x{4F9}", "\x{44B}"));
66 ok($objSr->eq("\x{4F8}", "\x{42B}"));
67 ok($objSr->eq("\x{4ED}", "\x{44D}"));
68 ok($objSr->eq("\x{4EC}", "\x{42D}"));
72 $objSr->change(level => 2);
74 ok($objSr->gt("\x{4D1}", "\x{430}"));
75 ok($objSr->gt("\x{4D0}", "\x{410}"));
76 ok($objSr->gt("\x{4D3}", "\x{430}"));
77 ok($objSr->gt("\x{4D2}", "\x{410}"));
78 ok($objSr->gt("\x{453}", "\x{433}"));
79 ok($objSr->gt("\x{403}", "\x{413}"));
80 ok($objSr->gt("\x{4D7}", "\x{435}"));
81 ok($objSr->gt("\x{4D6}", "\x{415}"));
82 ok($objSr->gt("\x{4DD}", "\x{436}"));
83 ok($objSr->gt("\x{4DC}", "\x{416}"));
84 ok($objSr->gt("\x{4DF}", "\x{437}"));
85 ok($objSr->gt("\x{4DE}", "\x{417}"));
86 ok($objSr->gt("\x{457}", "\x{456}"));
87 ok($objSr->gt("\x{407}", "\x{406}"));
88 ok($objSr->gt("\x{4E7}", "\x{43E}"));
89 ok($objSr->gt("\x{4E6}", "\x{41E}"));
90 ok($objSr->gt("\x{45C}", "\x{43A}"));
91 ok($objSr->gt("\x{40C}", "\x{41A}"));
92 ok($objSr->gt("\x{45E}", "\x{443}"));
93 ok($objSr->gt("\x{40E}", "\x{423}"));
94 ok($objSr->gt("\x{4F1}", "\x{443}"));
95 ok($objSr->gt("\x{4F0}", "\x{423}"));
96 ok($objSr->gt("\x{4F3}", "\x{443}"));
97 ok($objSr->gt("\x{4F2}", "\x{423}"));
98 ok($objSr->gt("\x{4F5}", "\x{447}"));
99 ok($objSr->gt("\x{4F4}", "\x{427}"));
100 ok($objSr->gt("\x{4F9}", "\x{44B}"));
101 ok($objSr->gt("\x{4F8}", "\x{42B}"));
102 ok($objSr->gt("\x{4ED}", "\x{44D}"));
103 ok($objSr->gt("\x{4EC}", "\x{42D}"));
107 $objSr->change(level => 3);
109 ok($objSr->eq("\x{4D1}", "\x{430}\x{306}"));
110 ok($objSr->eq("\x{4D0}", "\x{410}\x{306}"));
111 ok($objSr->eq("\x{4D3}", "\x{430}\x{308}"));
112 ok($objSr->eq("\x{4D2}", "\x{410}\x{308}"));
113 ok($objSr->eq("\x{453}", "\x{433}\x{301}"));
114 ok($objSr->eq("\x{403}", "\x{413}\x{301}"));
115 ok($objSr->eq("\x{4D7}", "\x{435}\x{306}"));
116 ok($objSr->eq("\x{4D6}", "\x{415}\x{306}"));
117 ok($objSr->eq("\x{4DD}", "\x{436}\x{308}"));
118 ok($objSr->eq("\x{4DC}", "\x{416}\x{308}"));
119 ok($objSr->eq("\x{4DF}", "\x{437}\x{308}"));
120 ok($objSr->eq("\x{4DE}", "\x{417}\x{308}"));
121 ok($objSr->eq("\x{4E5}", "\x{438}\x{308}"));
122 ok($objSr->eq("\x{4E4}", "\x{418}\x{308}"));
123 ok($objSr->eq("\x{457}", "\x{456}\x{308}"));
124 ok($objSr->eq("\x{407}", "\x{406}\x{308}"));
125 ok($objSr->eq("\x{439}", "\x{438}\x{306}"));
126 ok($objSr->eq("\x{419}", "\x{418}\x{306}"));
127 ok($objSr->eq("\x{4E7}", "\x{43E}\x{308}"));
128 ok($objSr->eq("\x{4E6}", "\x{41E}\x{308}"));
129 ok($objSr->eq("\x{45C}", "\x{43A}\x{301}"));
130 ok($objSr->eq("\x{40C}", "\x{41A}\x{301}"));
131 ok($objSr->eq("\x{45E}", "\x{443}\x{306}"));
132 ok($objSr->eq("\x{40E}", "\x{423}\x{306}"));
133 ok($objSr->eq("\x{4F1}", "\x{443}\x{308}"));
134 ok($objSr->eq("\x{4F0}", "\x{423}\x{308}"));
135 ok($objSr->eq("\x{4F3}", "\x{443}\x{30B}"));
136 ok($objSr->eq("\x{4F2}", "\x{423}\x{30B}"));
137 ok($objSr->eq("\x{4F5}", "\x{447}\x{308}"));
138 ok($objSr->eq("\x{4F4}", "\x{427}\x{308}"));
139 ok($objSr->eq("\x{4F9}", "\x{44B}\x{308}"));
140 ok($objSr->eq("\x{4F8}", "\x{42B}\x{308}"));
141 ok($objSr->eq("\x{4ED}", "\x{44D}\x{308}"));
142 ok($objSr->eq("\x{4EC}", "\x{42D}\x{308}"));
146 ok($objSr->eq("\x{4D1}", "\x{430}\0\x{306}"));
147 ok($objSr->eq("\x{4D0}", "\x{410}\0\x{306}"));
148 ok($objSr->eq("\x{4D3}", "\x{430}\0\x{308}"));
149 ok($objSr->eq("\x{4D2}", "\x{410}\0\x{308}"));
150 ok($objSr->eq("\x{453}", "\x{433}\0\x{301}"));
151 ok($objSr->eq("\x{403}", "\x{413}\0\x{301}"));
152 ok($objSr->eq("\x{4D7}", "\x{435}\0\x{306}"));
153 ok($objSr->eq("\x{4D6}", "\x{415}\0\x{306}"));
154 ok($objSr->eq("\x{4DD}", "\x{436}\0\x{308}"));
155 ok($objSr->eq("\x{4DC}", "\x{416}\0\x{308}"));
156 ok($objSr->eq("\x{4DF}", "\x{437}\0\x{308}"));
157 ok($objSr->eq("\x{4DE}", "\x{417}\0\x{308}"));
158 ok($objSr->eq("\x{457}", "\x{456}\0\x{308}"));
159 ok($objSr->eq("\x{407}", "\x{406}\0\x{308}"));
160 ok($objSr->eq("\x{4E7}", "\x{43E}\0\x{308}"));
161 ok($objSr->eq("\x{4E6}", "\x{41E}\0\x{308}"));
162 ok($objSr->eq("\x{45C}", "\x{43A}\0\x{301}"));
163 ok($objSr->eq("\x{40C}", "\x{41A}\0\x{301}"));
164 ok($objSr->eq("\x{45E}", "\x{443}\0\x{306}"));
165 ok($objSr->eq("\x{40E}", "\x{423}\0\x{306}"));
166 ok($objSr->eq("\x{4F1}", "\x{443}\0\x{308}"));
167 ok($objSr->eq("\x{4F0}", "\x{423}\0\x{308}"));
168 ok($objSr->eq("\x{4F3}", "\x{443}\0\x{30B}"));
169 ok($objSr->eq("\x{4F2}", "\x{423}\0\x{30B}"));
170 ok($objSr->eq("\x{4F5}", "\x{447}\0\x{308}"));
171 ok($objSr->eq("\x{4F4}", "\x{427}\0\x{308}"));
172 ok($objSr->eq("\x{4F9}", "\x{44B}\0\x{308}"));
173 ok($objSr->eq("\x{4F8}", "\x{42B}\0\x{308}"));
174 ok($objSr->eq("\x{4ED}", "\x{44D}\0\x{308}"));
175 ok($objSr->eq("\x{4EC}", "\x{42D}\0\x{308}"));