This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Refactor die_exit.t to loop over a list, rather than iterate on an hash.
[perl5.git] / cpan / Unicode-Collate / t / loc_et.t
CommitLineData
68adb2b0
CBW
1
2BEGIN {
3 unless ("A" eq pack('U', 0x41)) {
4 print "1..0 # Unicode::Collate " .
5 "cannot stringify a Unicode code point\n";
6 exit 0;
7 }
8 if ($ENV{PERL_CORE}) {
9 chdir('t') if -d 't';
10 @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib);
11 }
12}
13
14use Test;
15BEGIN { plan tests => 61 };
16
64dc7822
CBW
17use strict;
18use warnings;
19use Unicode::Collate::Locale;
20
68adb2b0
CBW
21ok(1);
22
23#########################
64dc7822
CBW
24
25my $objEt = Unicode::Collate::Locale->
26 new(locale => 'ET', normalization => undef);
27
64dc7822
CBW
28ok($objEt->getlocale, 'et');
29
30$objEt->change(level => 1);
31
32ok($objEt->lt("s", "s\x{30C}"));
33ok($objEt->gt("z", "s\x{30C}"));
34ok($objEt->lt("z", "z\x{30C}"));
35ok($objEt->gt("t", "z\x{30C}"));
36ok($objEt->eq("v", "w"));
37ok($objEt->lt("w", "o\x{303}"));
38ok($objEt->lt("o\x{303}", "a\x{308}"));
39ok($objEt->lt("a\x{308}", "o\x{308}"));
40ok($objEt->lt("o\x{308}", "u\x{308}"));
41ok($objEt->lt("u\x{308}", "x"));
42
43# 12
44
45$objEt->change(level => 2);
46
47ok($objEt->lt("v", "w"));
48ok($objEt->eq("s\x{30C}", "S\x{30C}"));
49ok($objEt->eq("z", "Z"));
50ok($objEt->eq("z\x{30C}", "Z\x{30C}"));
51ok($objEt->eq("w", "W"));
52ok($objEt->eq("o\x{303}", "O\x{303}"));
53ok($objEt->eq("a\x{308}", "A\x{308}"));
54ok($objEt->eq("o\x{308}", "O\x{308}"));
55ok($objEt->eq("u\x{308}", "U\x{308}"));
56
57# 21
58
59$objEt->change(level => 3);
60
61ok($objEt->lt("s\x{30C}", "S\x{30C}"));
62ok($objEt->lt("z", "Z"));
63ok($objEt->lt("z\x{30C}", "Z\x{30C}"));
64ok($objEt->lt("w", "W"));
65ok($objEt->lt("o\x{303}", "O\x{303}"));
66ok($objEt->lt("a\x{308}", "A\x{308}"));
67ok($objEt->lt("o\x{308}", "O\x{308}"));
68ok($objEt->lt("u\x{308}", "U\x{308}"));
69
70# 29
71
72ok($objEt->eq("s\x{30C}", "\x{161}"));
73ok($objEt->eq("S\x{30C}", "\x{160}"));
74ok($objEt->eq("z\x{30C}", "\x{17E}"));
75ok($objEt->eq("Z\x{30C}", "\x{17D}"));
76ok($objEt->eq("o\x{303}", pack('U', 0xF5)));
77ok($objEt->eq("O\x{303}", pack('U', 0xD5)));
78ok($objEt->eq("a\x{308}", pack('U', 0xE4)));
79ok($objEt->eq("A\x{308}", pack('U', 0xC4)));
80ok($objEt->eq("o\x{308}", pack('U', 0xF6)));
81ok($objEt->eq("O\x{308}", pack('U', 0xD6)));
82ok($objEt->eq("u\x{308}", pack('U', 0xFC)));
83ok($objEt->eq("U\x{308}", pack('U', 0xDC)));
c02ee425
CBW
84
85# 41
86
87ok($objEt->eq("o\x{303}\x{301}","\x{1E4D}"));
88ok($objEt->eq("O\x{303}\x{301}","\x{1E4C}"));
89ok($objEt->eq("o\x{303}\x{304}", "\x{22D}"));
90ok($objEt->eq("O\x{303}\x{304}", "\x{22C}"));
91ok($objEt->eq("o\x{303}\x{308}","\x{1E4F}"));
92ok($objEt->eq("O\x{303}\x{308}","\x{1E4E}"));
93ok($objEt->eq("o\x{303}\x{31B}","\x{1EE1}"));
94ok($objEt->eq("O\x{303}\x{31B}","\x{1EE0}"));
95ok($objEt->eq("a\x{308}\x{304}", "\x{1DF}"));
96ok($objEt->eq("A\x{308}\x{304}", "\x{1DE}"));
97ok($objEt->eq("o\x{308}\x{304}", "\x{22B}"));
98ok($objEt->eq("O\x{308}\x{304}", "\x{22A}"));
f1a7422f
CBW
99ok($objEt->eq("u\x{308}\x{300}", "\x{1DC}"));
100ok($objEt->eq("U\x{308}\x{300}", "\x{1DB}"));
101ok($objEt->eq("u\x{308}\x{301}", "\x{1D8}"));
102ok($objEt->eq("U\x{308}\x{301}", "\x{1D7}"));
103ok($objEt->eq("u\x{308}\x{304}", "\x{1D6}"));
104ok($objEt->eq("U\x{308}\x{304}", "\x{1D5}"));
105ok($objEt->eq("u\x{308}\x{30C}", "\x{1DA}"));
106ok($objEt->eq("U\x{308}\x{30C}", "\x{1D9}"));
64dc7822 107
c02ee425 108# 61