Move Archive::Tar from lib/ to ext/
[p5sagit/p5-mst-13.2.git] / lib / Locale / Codes / t / languages.t
CommitLineData
47a334e9 1#!./perl
2#
3# language.t - tests for Locale::Language
4#
a8135056 5
6BEGIN {
7 chdir 't' if -d 't';
8 @INC = '../lib';
9}
10
47a334e9 11use Locale::Language;
12
4c53e876 13no utf8; # we contain Latin-1
3ba0e062 14
47a334e9 15#-----------------------------------------------------------------------
16# This is an array of tests. Each test is eval'd as an expression.
17# If it evaluates to FALSE, then "not ok N" is printed for the test,
18# otherwise "ok N".
19#-----------------------------------------------------------------------
20@TESTS =
21(
22 #================================================
23 # TESTS FOR code2language
24 #================================================
25
26 #---- selection of examples which should all result in undef -----------
27 '!defined code2language()', # no argument => undef returned
28 '!defined code2language(undef)', # undef arg => undef returned
29 '!defined code2language("zz")', # illegal code => undef
30 '!defined code2language("jp")', # ja for lang, jp for country
31
32 #---- test recent changes ----------------------------------------------
33 'code2language("ae") eq "Avestan"',
34 'code2language("bs") eq "Bosnian"',
35 'code2language("ch") eq "Chamorro"',
36 'code2language("ce") eq "Chechen"',
37 'code2language("cu") eq "Church Slavic"',
38 'code2language("cv") eq "Chuvash"',
39 'code2language("hz") eq "Herero"',
40 'code2language("ho") eq "Hiri Motu"',
41 'code2language("ki") eq "Kikuyu"',
42 'code2language("kj") eq "Kuanyama"',
43 'code2language("kv") eq "Komi"',
44 'code2language("mh") eq "Marshall"',
45 'code2language("nv") eq "Navajo"',
46 'code2language("nr") eq "Ndebele, South"',
47 'code2language("nd") eq "Ndebele, North"',
48 'code2language("ng") eq "Ndonga"',
49 'code2language("nn") eq "Norwegian Nynorsk"',
a7235d91 50 'code2language("nb") eq "Norwegian Bokmal"',
47a334e9 51 'code2language("ny") eq "Chichewa; Nyanja"',
52 'code2language("oc") eq "Occitan (post 1500)"',
53 'code2language("os") eq "Ossetian; Ossetic"',
54 'code2language("pi") eq "Pali"',
55 '!defined code2language("sh")', # Serbo-Croatian withdrawn
56 'code2language("se") eq "Sami"',
57 'code2language("sc") eq "Sardinian"',
58 'code2language("kw") eq "Cornish"',
59 'code2language("gv") eq "Manx"',
60 'code2language("lb") eq "Letzeburgesch"',
61 'code2language("he") eq "Hebrew"',
62 '!defined code2language("iw")', # Hebrew withdrawn
63 'code2language("id") eq "Indonesian"',
64 '!defined code2language("in")', # Indonesian withdrawn
65 'code2language("iu") eq "Inuktitut"',
66 'code2language("ug") eq "Uighur"',
67 '!defined code2language("ji")', # Yiddish withdrawn
68 'code2language("yi") eq "Yiddish"',
69 'code2language("za") eq "Zhuang"',
70
71 #---- some successful examples -----------------------------------------
72 'code2language("DA") eq "Danish"',
73 'code2language("eo") eq "Esperanto"',
74 'code2language("fi") eq "Finnish"',
75 'code2language("en") eq "English"',
76 'code2language("aa") eq "Afar"', # first in DATA segment
77 'code2language("zu") eq "Zulu"', # last in DATA segment
78
79 #================================================
80 # TESTS FOR language2code
81 #================================================
82
83 #---- selection of examples which should all result in undef -----------
84 '!defined language2code()', # no argument => undef returned
85 '!defined language2code(undef)', # undef arg => undef returned
86 '!defined language2code("Banana")', # illegal lang name => undef
87
88 #---- some successful examples -----------------------------------------
89 'language2code("Japanese") eq "ja"',
90 'language2code("japanese") eq "ja"',
91 'language2code("japanese") ne "jp"',
92 'language2code("French") eq "fr"',
93 'language2code("Greek") eq "el"',
94 'language2code("english") eq "en"',
95 'language2code("ESTONIAN") eq "et"',
96 'language2code("Afar") eq "aa"', # first in DATA segment
97 'language2code("Zulu") eq "zu"', # last in DATA segment
98);
99
100print "1..", int(@TESTS), "\n";
101
102$testid = 1;
103foreach $test (@TESTS)
104{
105 eval "print (($test) ? \"ok $testid\\n\" : \"not ok $testid\\n\" )";
106 print "not ok $testid\n" if $@;
107 ++$testid;
108}
109
110exit 0;