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_tr.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 => 57 };
16
f1a7422f
CBW
17use strict;
18use warnings;
19use Unicode::Collate::Locale;
20
68adb2b0
CBW
21ok(1);
22
23#########################
f1a7422f
CBW
24
25my $objTr = Unicode::Collate::Locale->
26 new(locale => 'TR', normalization => undef);
27
f1a7422f
CBW
28ok($objTr->getlocale, 'tr');
29
30$objTr->change(level => 1);
31
32ok($objTr->lt("c", "c\x{327}"));
33ok($objTr->gt("d", "c\x{327}"));
34ok($objTr->lt("g", "g\x{306}"));
35ok($objTr->gt("h", "g\x{306}"));
36ok($objTr->lt("h", "I"));
37ok($objTr->lt("I", "i"));
38ok($objTr->gt("j", "i"));
39ok($objTr->lt("o", "o\x{308}"));
40ok($objTr->gt("p", "o\x{308}"));
41ok($objTr->lt("s", "s\x{327}"));
42ok($objTr->gt("t", "s\x{327}"));
43ok($objTr->lt("u", "u\x{308}"));
44ok($objTr->gt("v", "u\x{308}"));
45
46# 15
47
48$objTr->change(level => 2);
49
50ok($objTr->eq("c\x{327}", "C\x{327}"));
51ok($objTr->eq("g\x{306}", "G\x{306}"));
52ok($objTr->eq("\x{131}", "I"));
53ok($objTr->eq("\x{130}", "i"));
54ok($objTr->eq("o\x{308}", "O\x{308}"));
55ok($objTr->eq("s\x{327}", "S\x{327}"));
56ok($objTr->eq("u\x{308}", "U\x{308}"));
57
58# 22
59
60$objTr->change(level => 3);
61
62ok($objTr->lt("c\x{327}", "C\x{327}"));
63ok($objTr->lt("g\x{306}", "G\x{306}"));
64ok($objTr->lt("\x{131}", "I"));
65ok($objTr->gt("\x{130}", "i"));
66ok($objTr->lt("o\x{308}", "O\x{308}"));
67ok($objTr->lt("s\x{327}", "S\x{327}"));
68ok($objTr->lt("u\x{308}", "U\x{308}"));
69
70# 29
71
72ok($objTr->eq("c\x{327}", pack('U', 0xE7)));
73ok($objTr->eq("C\x{327}", pack('U', 0xC7)));
74ok($objTr->eq("g\x{306}", "\x{11F}"));
75ok($objTr->eq("G\x{306}", "\x{11E}"));
76ok($objTr->eq("I\x{300}", pack('U', 0xCC)));
77ok($objTr->eq("I\x{301}", pack('U', 0xCD)));
78ok($objTr->eq("I\x{302}", pack('U', 0xCE)));
79ok($objTr->eq("I\x{308}", pack('U', 0xCF)));
80ok($objTr->eq("I\x{304}", "\x{12A}"));
81ok($objTr->eq("I\x{306}", "\x{12C}"));
82ok($objTr->eq("I\x{328}", "\x{12E}"));
83ok($objTr->eq("I\x{307}", "\x{130}"));
84
85# 41
86
87ok($objTr->eq("o\x{308}", pack('U', 0xF6)));
88ok($objTr->eq("O\x{308}", pack('U', 0xD6)));
89ok($objTr->eq("o\x{308}\x{304}", "\x{22B}"));
90ok($objTr->eq("O\x{308}\x{304}", "\x{22A}"));
91ok($objTr->eq("s\x{327}", "\x{15F}"));
92ok($objTr->eq("S\x{327}", "\x{15E}"));
93ok($objTr->eq("u\x{308}", pack('U', 0xFC)));
94ok($objTr->eq("U\x{308}", pack('U', 0xDC)));
95ok($objTr->eq("u\x{308}\x{300}", "\x{1DC}"));
96ok($objTr->eq("U\x{308}\x{300}", "\x{1DB}"));
97ok($objTr->eq("u\x{308}\x{301}", "\x{1D8}"));
98ok($objTr->eq("U\x{308}\x{301}", "\x{1D7}"));
99ok($objTr->eq("u\x{308}\x{304}", "\x{1D6}"));
100ok($objTr->eq("U\x{308}\x{304}", "\x{1D5}"));
101ok($objTr->eq("u\x{308}\x{30C}", "\x{1DA}"));
102ok($objTr->eq("U\x{308}\x{30C}", "\x{1D9}"));
103
104# 57