Upgrade to Locale::Maketext 1.09
[p5sagit/p5-mst-13.2.git] / lib / Locale / Maketext / t / 40_super.t
CommitLineData
14be35aa 1
1189c245 2# Time-stamp: "2004-03-30 18:02:24 AST"
14be35aa 3#sub Locale::Maketext::DEBUG () {10}
4use Locale::Maketext;
5
6use Test;
7BEGIN { plan tests => 19 };
8
9print "#\n# Testing non-tight insertion of super-ordinate language tags...\n#\n";
10
11my @in = grep m/\S/, split /[\n\r]/, q{
12 NIX => NIX
13 sv => sv
14 en => en
15 hai => hai
16
17 pt-br => pt-br pt
18 pt-br fr => pt-br fr pt
1189c245 19 pt-br fr pt => pt-br fr pt
20 pt-br fr pt de => pt-br fr pt de
21 de pt-br fr pt => de pt-br fr pt
14be35aa 22 de pt-br fr => de pt-br fr pt
23 hai pt-br fr => hai pt-br fr pt
24
25# Now test multi-part complicateds:
26 pt-br-janeiro fr => pt-br-janeiro fr pt-br pt
27pt-br-janeiro de fr => pt-br-janeiro de fr pt-br pt
1189c245 28pt-br-janeiro de pt fr => pt-br-janeiro de pt fr pt-br
14be35aa 29
30ja pt-br-janeiro fr => ja pt-br-janeiro fr pt-br pt
31ja pt-br-janeiro de fr => ja pt-br-janeiro de fr pt-br pt
1189c245 32ja pt-br-janeiro de pt fr => ja pt-br-janeiro de pt fr pt-br
14be35aa 33
1189c245 34pt-br-janeiro de pt-br fr => pt-br-janeiro de pt-br fr pt
14be35aa 35 # an odd case, since we don't filter for uniqueness in this sub
36
37};
38
39$Locale::Maketext::MATCH_SUPERS_TIGHTLY = 0;
40
41foreach my $in (@in) {
42 $in =~ s/^\s+//s;
43 $in =~ s/\s+$//s;
44 $in =~ s/#.+//s;
45 next unless $in =~ m/\S/;
46
47 my(@in, @should);
48 {
49 die "What kind of line is <$in>?!"
50 unless $in =~ m/^(.+)=>(.+)$/s;
51
52 my($i,$s) = ($1, $2);
53 @in = ($i =~ m/(\S+)/g);
54 @should = ($s =~ m/(\S+)/g);
55 #print "{@in}{@should}\n";
56 }
57 my @out = Locale::Maketext->_add_supers(
58 ("@in" eq 'NIX') ? () : @in
59 );
60 #print "O: ", join(' ', map "<$_>", @out), "\n";
61 @out = 'NIX' unless @out;
62
63
64 if( @out == @should
65 and lc( join "\e", @out ) eq lc( join "\e", @should )
66 ) {
67 print "# Happily got [@out] from [$in]\n";
68 ok 1;
69 } else {
70 ok 0;
71 print "#!!Got: [@out]\n",
72 "#!! but wanted: [@should]\n",
73 "#!! from \"$in\"\n#\n";
74 }
75}
76
77print "#\n#\n# Bye-bye!\n";
78ok 1;
79