diff options
author | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2012-12-15 13:29:13 +0000 |
---|---|---|
committer | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2012-12-15 13:29:13 +0000 |
commit | 6d3c12b51eab17f76fe9a1afc3d7023d3cdb6a6b (patch) | |
tree | 399169b454d31a1358abae400a3783451138159c /cpan/Unicode-Collate/t/default.t | |
parent | fc826e38a4eb6efa4cfc92de662b40a6d5333e5e (diff) | |
download | perl-6d3c12b51eab17f76fe9a1afc3d7023d3cdb6a6b.tar.gz |
Update Unicode-Collate to CPAN version 0.96
[DELTA]
0.96 Sat Dec 15 19:43:10 2012
- special noncharancter tailorings ('highestFFFF' and 'minimalFFFE')
* some locales are modified for 'highestFFFF': as, bn, fa, gu, hi, hy,
kn, kok, mr, or, sa, si, si_dict, ta, te, th, ur.
- U::C::Locale now allows 'entry' to add or override mappings.
- bug fix: using DUCET through XS wrongly prevented completely ignorable
characters from tailoring.
- modified tests: default.t, loc_as.t, loc_bn.t, loc_fa.t, loc_gu.t,
loc_hi.t, loc_hy.t, loc_kn.t, loc_kok.t, loc_mr.t, loc_or.t, loc_sa.t,
loc_si.t, loc_sidt.t, loc_ta.t, loc_te.t, loc_test.t, loc_th.t,
loc_ur.t, nonchar.t in t.
Diffstat (limited to 'cpan/Unicode-Collate/t/default.t')
-rw-r--r-- | cpan/Unicode-Collate/t/default.t | 53 |
1 files changed, 39 insertions, 14 deletions
diff --git a/cpan/Unicode-Collate/t/default.t b/cpan/Unicode-Collate/t/default.t index bec9c294fd..14a96937e6 100644 --- a/cpan/Unicode-Collate/t/default.t +++ b/cpan/Unicode-Collate/t/default.t @@ -13,7 +13,7 @@ BEGIN { use strict; use warnings; -BEGIN { $| = 1; print "1..60\n"; } +BEGIN { $| = 1; print "1..70\n"; } my $count = 0; sub ok ($;$) { my $p = my $r = shift; @@ -40,8 +40,6 @@ my $acute = _pack_U(0x0301); my $hiragana = "\x{3042}\x{3044}"; my $katakana = "\x{30A2}\x{30A4}"; -##### 2..11 - my $Collator = Unicode::Collate->new( normalization => undef, ); @@ -53,6 +51,8 @@ ok($Collator->version(), Unicode::Collate->Base_Unicode_Version); ok($Collator->version, $Collator->Base_Unicode_Version); ok($Collator->version(), $Collator->Base_Unicode_Version()); +# 6 + ok($Collator->cmp("", ""), 0); ok($Collator->eq("", "")); ok($Collator->cmp("", "perl"), -1); @@ -67,7 +67,7 @@ ok( join(':', qw/ ACA ACHA ACIA ACKA ADA / ), ); -##### 12..22 +# 11 ok($Collator->cmp("A$acute", $A_acute), 0); # @version 3.1.1 (prev: -1) ok($Collator->cmp($a_acute, $A_acute), -1); @@ -85,7 +85,7 @@ ok($Collator->lt("A", $A_acute)); ok($Collator->lt("A", $a_acute)); ok($Collator->lt($a_acute, $A_acute)); -##### 23..29 +# 22 $Collator->change(level => 2); @@ -98,7 +98,7 @@ ok( $Collator->cmp($hiragana, $katakana), 0); ok( $Collator->eq($hiragana, $katakana) ); ok( $Collator->ge($hiragana, $katakana) ); -##### 30..35 +# 29 # hangul ok( $Collator->eq("a\x{AC00}b", "a\x{1100}\x{1161}b") ); @@ -108,7 +108,7 @@ ok( $Collator->lt("a\x{AC00}b", "a\x{AE00}b") ); ok( $Collator->gt("a\x{D7A3}b", "a\x{C544}b") ); ok( $Collator->lt("a\x{C544}b", "a\x{30A2}b") ); # hangul < hiragana -##### 36..44 +# 35 $Collator->change(%old_level, katakana_before_hiragana => 1); @@ -123,7 +123,7 @@ ok( $Collator->ne($hiragana, $katakana) ); ok( $Collator->gt($hiragana, $katakana) ); ok( $Collator->ge($hiragana, $katakana) ); -##### 45..50 +# 44 $Collator->change(upper_before_lower => 1); @@ -134,14 +134,14 @@ ok( $Collator->cmp($hiragana, $katakana), 1); ok( $Collator->ge($hiragana, $katakana), 1); ok( $Collator->gt($hiragana, $katakana), 1); -##### 51..52 +# 50 $Collator->change(katakana_before_hiragana => 0); ok( $Collator->cmp("abc", "ABC"), 1); ok( $Collator->cmp($hiragana, $katakana), -1); -##### 53..54 +# 52 $Collator->change(upper_before_lower => 0); @@ -150,19 +150,44 @@ ok( $Collator->le("abc", "ABC") ); ok( $Collator->cmp($hiragana, $katakana), -1); ok( $Collator->lt($hiragana, $katakana) ); -##### 55..60 +# 56 $Collator->change(level => 1); -my $SupCyril = Unicode::Collate->new( +my $Tailored = Unicode::Collate->new( normalization => undef, suppress => [0x400..0x4FF], level => 1, + entry => '0000 ; [.FFFE.0020.0005.0000]', ); # Ka vs Kje ok($Collator->gt("\x{45C}", "\x{43A}")); ok($Collator->gt("\x{40C}", "\x{41A}")); -ok($SupCyril->gt("\x{45C}", "\x{43A}")); -ok($SupCyril->gt("\x{40C}", "\x{41A}")); +ok($Tailored->gt("\x{45C}", "\x{43A}")); +ok($Tailored->gt("\x{40C}", "\x{41A}")); + +# 60 + +ok($Collator->eq("abc\0", "abc")); +ok($Tailored->gt("abc\0", "abc\x{4E00}")); +ok($Tailored->gt("abc\0", "abc\x{FFFD}")); +ok($Tailored->gt("abc\0", "abc\x{FFFD}")); + +# 64 + +$Tailored->change(UCA_Version => 9); + +ok($Tailored->gt("abc\0", "abc\x{4E00}")); +ok($Tailored->gt("abc\0", "abc\x{FFFD}")); +ok($Tailored->gt("abc\0", "abc\x{FFFD}")); + +# 67 + +$Tailored->change(UCA_Version => 8); + +ok($Tailored->gt("abc\0", "abc\x{4E00}")); +ok($Tailored->gt("abc\0", "abc\x{FFFD}")); +ok($Tailored->gt("abc\0", "abc\x{FFFD}")); +# 70 |