This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Updated Unicode-Collate to CPAN version 0.76
[perl5.git] / cpan / Unicode-Collate / t / loc_es.t
1
2 BEGIN {
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
14 use Test;
15 BEGIN { plan tests => 28 };
16
17 use strict;
18 use warnings;
19 use Unicode::Collate::Locale;
20
21 ok(1);
22
23 #########################
24
25 my $objEs = Unicode::Collate::Locale->
26     new(locale => 'ES', normalization => undef);
27
28 ok($objEs->getlocale, 'es');
29
30 $objEs->change(level => 1);
31
32 ok($objEs->lt("cg", "ch"));
33 ok($objEs->gt("ci", "ch"));
34 ok($objEs->gt("d", "ch"));
35 ok($objEs->lt("lk", "ll"));
36 ok($objEs->gt("lm", "ll"));
37 ok($objEs->gt("m", "ll"));
38 ok($objEs->lt("n", "n\x{303}"));
39 ok($objEs->gt("o", "n\x{303}"));
40
41 # 10
42
43 ok($objEs->eq("a\x{300}a", "aa\x{300}"));
44
45 $objEs->change(level => 2);
46
47 ok($objEs->gt("a\x{300}a", "aa\x{300}"));
48 ok($objEs->lt("Ca\x{300}ca\x{302}", "ca\x{302}ca\x{300}"));
49 ok($objEs->lt("ca\x{300}ca\x{302}", "Ca\x{302}ca\x{300}"));
50
51 # 14
52
53 ok($objEs->eq("ch", "Ch"));
54 ok($objEs->eq("Ch", "CH"));
55 ok($objEs->eq("ll", "Ll"));
56 ok($objEs->eq("Ll", "LL"));
57 ok($objEs->eq("n\x{303}", "N\x{303}"));
58
59 # 19
60
61 $objEs->change(level => 3);
62
63 ok($objEs->lt("ch", "Ch"));
64 ok($objEs->lt("Ch", "CH"));
65 ok($objEs->lt("ll", "Ll"));
66 ok($objEs->lt("Ll", "LL"));
67 ok($objEs->lt("n\x{303}", "N\x{303}"));
68 ok($objEs->eq("n\x{303}", pack('U', 0xF1)));
69 ok($objEs->eq("N\x{303}", pack('U', 0xD1)));
70
71 # 26
72
73 $objEs->change(level => 2, ignore_level2 => 1);
74
75 ok($objEs->lt("n", "n\x{303}"));
76 ok($objEs->eq("a", "a\x{303}"));
77
78 # 28