1 use Unicode::UCD 3.1.0;
6 BEGIN { plan tests => 81 };
8 use Unicode::UCD 'charinfo';
12 %charinfo = charinfo(0x41);
14 ok($charinfo{code}, '0041');
15 ok($charinfo{name}, 'LATIN CAPITAL LETTER A');
16 ok($charinfo{category}, 'Lu');
17 ok($charinfo{combining}, '0');
18 ok($charinfo{bidi}, 'L');
19 ok($charinfo{decomposition}, '');
20 ok($charinfo{decimal}, '');
21 ok($charinfo{digit}, '');
22 ok($charinfo{numeric}, '');
23 ok($charinfo{mirrored}, 'N');
24 ok($charinfo{unicode10}, '');
25 ok($charinfo{comment}, '');
26 ok($charinfo{upper}, '');
27 ok($charinfo{lower}, '0061');
28 ok($charinfo{title}, '');
29 ok($charinfo{block}, 'Basic Latin');
31 %charinfo = charinfo(0x100);
33 ok($charinfo{code}, '0100');
34 ok($charinfo{name}, 'LATIN CAPITAL LETTER A WITH MACRON');
35 ok($charinfo{category}, 'Lu');
36 ok($charinfo{combining}, '0');
37 ok($charinfo{bidi}, 'L');
38 ok($charinfo{decomposition}, '0041 0304');
39 ok($charinfo{decimal}, '');
40 ok($charinfo{digit}, '');
41 ok($charinfo{numeric}, '');
42 ok($charinfo{mirrored}, 'N');
43 ok($charinfo{unicode10}, 'LATIN CAPITAL LETTER A MACRON');
44 ok($charinfo{comment}, '');
45 ok($charinfo{upper}, '');
46 ok($charinfo{lower}, '0101');
47 ok($charinfo{title}, '');
48 ok($charinfo{block}, 'Latin Extended-A');
50 %charinfo = charinfo(0x590);
52 ok($charinfo{code}, undef);
53 ok($charinfo{name}, undef);
54 ok($charinfo{category}, undef);
55 ok($charinfo{combining}, undef);
56 ok($charinfo{bidi}, undef);
57 ok($charinfo{decomposition}, undef);
58 ok($charinfo{decimal}, undef);
59 ok($charinfo{digit}, undef);
60 ok($charinfo{numeric}, undef);
61 ok($charinfo{mirrored}, undef);
62 ok($charinfo{unicode10}, undef);
63 ok($charinfo{comment}, undef);
64 ok($charinfo{upper}, undef);
65 ok($charinfo{lower}, undef);
66 ok($charinfo{title}, undef);
67 ok($charinfo{block}, undef);
69 %charinfo = charinfo(0x5d0);
71 ok($charinfo{code}, '05D0');
72 ok($charinfo{name}, 'HEBREW LETTER ALEF');
73 ok($charinfo{category}, 'Lo');
74 ok($charinfo{combining}, '0');
75 ok($charinfo{bidi}, 'R');
76 ok($charinfo{decomposition}, '');
77 ok($charinfo{decimal}, '');
78 ok($charinfo{digit}, '');
79 ok($charinfo{numeric}, '');
80 ok($charinfo{mirrored}, 'N');
81 ok($charinfo{unicode10}, '');
82 ok($charinfo{comment}, '');
83 ok($charinfo{upper}, '');
84 ok($charinfo{lower}, '');
85 ok($charinfo{title}, '');
86 ok($charinfo{block}, 'Hebrew');
88 use Unicode::UCD 'charblock';
90 ok(charblock(0x590), 'Hebrew');
92 %charinfo = charinfo(0xbe);
94 ok($charinfo{code}, '00BE');
95 ok($charinfo{name}, 'VULGAR FRACTION THREE QUARTERS');
96 ok($charinfo{category}, 'No');
97 ok($charinfo{combining}, '0');
98 ok($charinfo{bidi}, 'ON');
99 ok($charinfo{decomposition}, '<fraction> 0033 2044 0034');
100 ok($charinfo{decimal}, '');
101 ok($charinfo{digit}, '');
102 ok($charinfo{numeric}, '3/4');
103 ok($charinfo{mirrored}, 'N');
104 ok($charinfo{unicode10}, 'FRACTION THREE QUARTERS');
105 ok($charinfo{comment}, '');
106 ok($charinfo{upper}, '');
107 ok($charinfo{lower}, '');
108 ok($charinfo{title}, '');
109 ok($charinfo{block}, 'Latin-1 Supplement');