twitter_cldr 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +34 -18
- data/lib/twitter_cldr.rb +15 -21
- data/lib/twitter_cldr/core_ext.rb +2 -1
- data/lib/twitter_cldr/core_ext/array.rb +22 -0
- data/lib/twitter_cldr/core_ext/numbers/localized_number.rb +0 -1
- data/lib/twitter_cldr/core_ext/string.rb +10 -2
- data/lib/twitter_cldr/formatters/calendars/datetime_formatter.rb +4 -1
- data/lib/twitter_cldr/formatters/numbers/currency_formatter.rb +7 -2
- data/lib/twitter_cldr/formatters/numbers/decimal_formatter.rb +5 -1
- data/lib/twitter_cldr/formatters/numbers/number_formatter.rb +1 -1
- data/lib/twitter_cldr/formatters/numbers/percent_formatter.rb +5 -3
- data/lib/twitter_cldr/formatters/plurals/rules.rb +9 -5
- data/lib/twitter_cldr/normalizers/nfkd.rb +3 -1
- data/lib/twitter_cldr/shared.rb +2 -0
- data/lib/twitter_cldr/shared/calendar.rb +64 -0
- data/lib/twitter_cldr/shared/currencies.rb +6 -2
- data/lib/twitter_cldr/shared/languages.rb +10 -6
- data/lib/twitter_cldr/shared/numbers.rb +26 -0
- data/lib/twitter_cldr/shared/resources.rb +26 -9
- data/lib/twitter_cldr/shared/unicode_data.rb +26 -6
- data/lib/twitter_cldr/tokenizers/calendars/datetime_tokenizer.rb +5 -3
- data/lib/twitter_cldr/tokenizers/numbers/number_tokenizer.rb +1 -1
- data/lib/twitter_cldr/version.rb +1 -1
- data/resources/{ar → locales/ar}/calendars.yml +30 -33
- data/resources/{ar → locales/ar}/languages.yml +120 -118
- data/resources/{ar → locales/ar}/numbers.yml +8 -9
- data/resources/{ar → locales/ar}/plurals.yml +0 -0
- data/resources/{da → locales/da}/calendars.yml +24 -9
- data/resources/{da → locales/da}/languages.yml +14 -8
- data/resources/{da → locales/da}/numbers.yml +1 -2
- data/resources/{da → locales/da}/plurals.yml +0 -0
- data/resources/{de → locales/de}/calendars.yml +42 -8
- data/resources/{de → locales/de}/languages.yml +47 -42
- data/resources/{de → locales/de}/numbers.yml +1 -2
- data/resources/{de → locales/de}/plurals.yml +0 -0
- data/resources/{en → locales/en}/calendars.yml +16 -7
- data/resources/{en → locales/en}/languages.yml +53 -5
- data/resources/{en → locales/en}/numbers.yml +1 -2
- data/resources/{en → locales/en}/plurals.yml +0 -0
- data/resources/{es → locales/es}/calendars.yml +29 -15
- data/resources/{es → locales/es}/languages.yml +7 -5
- data/resources/{es → locales/es}/numbers.yml +3 -3
- data/resources/{es → locales/es}/plurals.yml +0 -0
- data/resources/{fa → locales/fa}/calendars.yml +87 -18
- data/resources/{fa → locales/fa}/languages.yml +13 -9
- data/resources/locales/fa/numbers.yml +29 -0
- data/resources/{fa → locales/fa}/plurals.yml +0 -0
- data/resources/{fi → locales/fi}/calendars.yml +64 -14
- data/resources/{fi → locales/fi}/languages.yml +47 -36
- data/resources/{fi → locales/fi}/numbers.yml +1 -2
- data/resources/{fi → locales/fi}/plurals.yml +0 -0
- data/resources/{fil → locales/fil}/calendars.yml +32 -23
- data/resources/{fil → locales/fil}/languages.yml +75 -22
- data/resources/{fil → locales/fil}/numbers.yml +1 -2
- data/resources/{fil → locales/fil}/plurals.yml +0 -0
- data/resources/{fr → locales/fr}/calendars.yml +54 -12
- data/resources/{fr → locales/fr}/languages.yml +5 -2
- data/resources/{fr → locales/fr}/numbers.yml +1 -2
- data/resources/{fr → locales/fr}/plurals.yml +0 -0
- data/resources/{he → locales/he}/calendars.yml +74 -38
- data/resources/{he → locales/he}/languages.yml +41 -26
- data/resources/{he → locales/he}/numbers.yml +1 -2
- data/resources/{he → locales/he}/plurals.yml +0 -0
- data/resources/{hi → locales/hi}/calendars.yml +36 -42
- data/resources/{hi → locales/hi}/languages.yml +8 -3
- data/resources/{hi → locales/hi}/numbers.yml +1 -2
- data/resources/{hi → locales/hi}/plurals.yml +0 -0
- data/resources/{hu → locales/hu}/calendars.yml +95 -19
- data/resources/{hu → locales/hu}/languages.yml +15 -4
- data/resources/{hu → locales/hu}/numbers.yml +1 -2
- data/resources/{hu → locales/hu}/plurals.yml +0 -0
- data/resources/{id → locales/id}/calendars.yml +56 -39
- data/resources/{id → locales/id}/languages.yml +148 -141
- data/resources/{id → locales/id}/numbers.yml +1 -2
- data/resources/{id → locales/id}/plurals.yml +0 -0
- data/resources/{it → locales/it}/calendars.yml +51 -15
- data/resources/{it → locales/it}/languages.yml +5 -5
- data/resources/{it → locales/it}/numbers.yml +2 -2
- data/resources/{it → locales/it}/plurals.yml +0 -0
- data/resources/{ja → locales/ja}/calendars.yml +26 -36
- data/resources/{ja → locales/ja}/languages.yml +29 -16
- data/resources/{ja → locales/ja}/numbers.yml +2 -3
- data/resources/{ja → locales/ja}/plurals.yml +0 -0
- data/resources/{ko → locales/ko}/calendars.yml +18 -9
- data/resources/{ko → locales/ko}/languages.yml +13 -10
- data/resources/{ko → locales/ko}/numbers.yml +1 -2
- data/resources/{ko → locales/ko}/plurals.yml +0 -0
- data/resources/{ms → locales/ms}/calendars.yml +91 -53
- data/resources/locales/ms/languages.yml +157 -0
- data/resources/{ms → locales/ms}/numbers.yml +1 -2
- data/resources/{ms → locales/ms}/plurals.yml +0 -0
- data/resources/{nl → locales/nl}/calendars.yml +38 -9
- data/resources/{nl → locales/nl}/languages.yml +28 -21
- data/resources/{nl → locales/nl}/numbers.yml +1 -2
- data/resources/{nl → locales/nl}/plurals.yml +0 -0
- data/resources/{no → locales/no}/calendars.yml +11 -6
- data/resources/{no → locales/no}/languages.yml +0 -0
- data/resources/{no → locales/no}/numbers.yml +1 -2
- data/resources/{no → locales/no}/plurals.yml +0 -0
- data/resources/{pl → locales/pl}/calendars.yml +80 -15
- data/resources/{pl → locales/pl}/languages.yml +6 -6
- data/resources/{pl → locales/pl}/numbers.yml +3 -2
- data/resources/{pl → locales/pl}/plurals.yml +0 -0
- data/resources/{pt → locales/pt}/calendars.yml +34 -8
- data/resources/{pt → locales/pt}/languages.yml +12 -4
- data/resources/{pt → locales/pt}/numbers.yml +1 -2
- data/resources/{pt → locales/pt}/plurals.yml +0 -0
- data/resources/{ru → locales/ru}/calendars.yml +69 -30
- data/resources/{ru → locales/ru}/languages.yml +18 -16
- data/resources/{ru → locales/ru}/numbers.yml +2 -3
- data/resources/{ru → locales/ru}/plurals.yml +0 -0
- data/resources/{sv → locales/sv}/calendars.yml +95 -15
- data/resources/{sv → locales/sv}/languages.yml +30 -8
- data/resources/{sv → locales/sv}/numbers.yml +1 -2
- data/resources/{sv → locales/sv}/plurals.yml +0 -0
- data/resources/{th → locales/th}/calendars.yml +89 -64
- data/resources/{th → locales/th}/languages.yml +5 -3
- data/resources/{th → locales/th}/numbers.yml +1 -2
- data/resources/{th → locales/th}/plurals.yml +0 -0
- data/resources/{tr → locales/tr}/calendars.yml +93 -19
- data/resources/{tr → locales/tr}/languages.yml +30 -28
- data/resources/{tr → locales/tr}/numbers.yml +2 -3
- data/resources/{tr → locales/tr}/plurals.yml +0 -0
- data/resources/{ur → locales/ur}/calendars.yml +33 -37
- data/resources/locales/ur/languages.yml +163 -0
- data/resources/{ur → locales/ur}/numbers.yml +1 -2
- data/resources/{ur → locales/ur}/plurals.yml +0 -0
- data/resources/{zh-Hant → locales/zh-Hant}/calendars.yml +76 -44
- data/resources/{zh-Hant → locales/zh-Hant}/languages.yml +122 -22
- data/resources/{zh-Hant → locales/zh-Hant}/numbers.yml +3 -4
- data/resources/{zh → locales/zh}/calendars.yml +81 -24
- data/resources/{zh → locales/zh}/languages.yml +13 -14
- data/resources/{zh → locales/zh}/numbers.yml +1 -2
- data/resources/{zh → locales/zh}/plurals.yml +0 -0
- data/spec/core_ext/array_spec.rb +16 -0
- data/spec/core_ext/calendars/date_spec.rb +6 -1
- data/spec/core_ext/calendars/datetime_spec.rb +6 -1
- data/spec/core_ext/calendars/time_spec.rb +6 -1
- data/spec/core_ext/numbers/localized_number_spec.rb +38 -8
- data/spec/core_ext/string_spec.rb +14 -1
- data/spec/formatters/numbers/number_formatter_spec.rb +3 -3
- data/spec/formatters/plurals/rules_spec.rb +3 -3
- data/spec/readme_spec.rb +190 -0
- data/spec/shared/calendar_spec.rb +133 -0
- data/spec/shared/numbers_spec.rb +35 -0
- data/spec/shared/resources_spec.rb +33 -15
- data/spec/tokenizers/calendars/date_tokenizer_spec.rb +37 -26
- data/spec/tokenizers/calendars/datetime_tokenizer_spec.rb +36 -29
- data/spec/tokenizers/calendars/time_tokenizer_spec.rb +22 -18
- data/spec/twitter_cldr_spec.rb +21 -7
- metadata +166 -114
- data/resources/fa/numbers.yml +0 -30
- data/resources/ms/languages.yml +0 -54
- data/resources/ur/languages.yml +0 -81
@@ -3,7 +3,7 @@ zh-Hant:
|
|
3
3
|
formats:
|
4
4
|
currency:
|
5
5
|
patterns:
|
6
|
-
default:
|
6
|
+
default: "¤#,##0.00"
|
7
7
|
unit:
|
8
8
|
other: "{0} {1}"
|
9
9
|
decimal:
|
@@ -16,15 +16,14 @@ zh-Hant:
|
|
16
16
|
patterns:
|
17
17
|
default: {}
|
18
18
|
symbols:
|
19
|
+
alias: ""
|
19
20
|
decimal: "."
|
20
21
|
exponential: E
|
21
22
|
group: ","
|
22
23
|
infinity: ∞
|
23
24
|
list: ;
|
24
25
|
minus_sign: "-"
|
25
|
-
nan:
|
26
|
-
native_zero_digit: 0
|
27
|
-
pattern_digit: "#"
|
26
|
+
nan: 非數值
|
28
27
|
per_mille: ‰
|
29
28
|
percent_sign: "%"
|
30
29
|
plus_sign: +
|
@@ -11,7 +11,14 @@ zh:
|
|
11
11
|
thu: 周四
|
12
12
|
tue: 周二
|
13
13
|
wed: 周三
|
14
|
-
narrow:
|
14
|
+
narrow:
|
15
|
+
fri: 五
|
16
|
+
mon: 一
|
17
|
+
sat: 六
|
18
|
+
sun: 日
|
19
|
+
thu: 四
|
20
|
+
tue: 二
|
21
|
+
wed: 三
|
15
22
|
wide:
|
16
23
|
fri: 星期五
|
17
24
|
mon: 星期一
|
@@ -21,7 +28,14 @@ zh:
|
|
21
28
|
tue: 星期二
|
22
29
|
wed: 星期三
|
23
30
|
stand-alone:
|
24
|
-
abbreviated:
|
31
|
+
abbreviated:
|
32
|
+
fri: 周五
|
33
|
+
mon: 周一
|
34
|
+
sat: 周六
|
35
|
+
sun: 周日
|
36
|
+
thu: 周四
|
37
|
+
tue: 周二
|
38
|
+
wed: 周三
|
25
39
|
narrow:
|
26
40
|
fri: 五
|
27
41
|
mon: 一
|
@@ -30,7 +44,14 @@ zh:
|
|
30
44
|
thu: 四
|
31
45
|
tue: 二
|
32
46
|
wed: 三
|
33
|
-
wide:
|
47
|
+
wide:
|
48
|
+
fri: 星期五
|
49
|
+
mon: 星期一
|
50
|
+
sat: 星期六
|
51
|
+
sun: 星期日
|
52
|
+
thu: 星期四
|
53
|
+
tue: 星期二
|
54
|
+
wed: 星期三
|
34
55
|
fields:
|
35
56
|
day: 日
|
36
57
|
dayperiod: 上午/下午
|
@@ -57,13 +78,13 @@ zh:
|
|
57
78
|
datetime:
|
58
79
|
default: :"calendars.gregorian.formats.datetime.medium"
|
59
80
|
full:
|
60
|
-
pattern: "{
|
81
|
+
pattern: "{{date}}{{time}}"
|
61
82
|
long:
|
62
|
-
pattern: "{
|
83
|
+
pattern: "{{date}}{{time}}"
|
63
84
|
medium:
|
64
|
-
pattern: "{
|
85
|
+
pattern: "{{date}} {{time}}"
|
65
86
|
short:
|
66
|
-
pattern: "{
|
87
|
+
pattern: "{{date}} {{time}}"
|
67
88
|
time:
|
68
89
|
default: :"calendars.gregorian.formats.time.medium"
|
69
90
|
full:
|
@@ -71,7 +92,7 @@ zh:
|
|
71
92
|
long:
|
72
93
|
pattern: zah时mm分ss秒
|
73
94
|
medium:
|
74
|
-
pattern: "
|
95
|
+
pattern: "ah:mm:ss"
|
75
96
|
short:
|
76
97
|
pattern: "ah:mm"
|
77
98
|
months:
|
@@ -89,7 +110,19 @@ zh:
|
|
89
110
|
7: 7月
|
90
111
|
8: 8月
|
91
112
|
9: 9月
|
92
|
-
narrow:
|
113
|
+
narrow:
|
114
|
+
1: 1
|
115
|
+
10: 10
|
116
|
+
11: 11
|
117
|
+
12: 12
|
118
|
+
2: 2
|
119
|
+
3: 3
|
120
|
+
4: 4
|
121
|
+
5: 5
|
122
|
+
6: 6
|
123
|
+
7: 7
|
124
|
+
8: 8
|
125
|
+
9: 9
|
93
126
|
wide:
|
94
127
|
1: 1月
|
95
128
|
10: 10月
|
@@ -118,18 +151,18 @@ zh:
|
|
118
151
|
8: 八月
|
119
152
|
9: 九月
|
120
153
|
narrow:
|
121
|
-
1: 1
|
122
|
-
10: 10
|
154
|
+
1: 1月
|
155
|
+
10: 10月
|
123
156
|
11: 11月
|
124
157
|
12: 12月
|
125
|
-
2: 2
|
126
|
-
3: 3
|
127
|
-
4: 4
|
128
|
-
5: 5
|
129
|
-
6: 6
|
130
|
-
7: 7
|
131
|
-
8: 8
|
132
|
-
9: 9
|
158
|
+
2: 2月
|
159
|
+
3: 3月
|
160
|
+
4: 4月
|
161
|
+
5: 5月
|
162
|
+
6: 6月
|
163
|
+
7: 7月
|
164
|
+
8: 8月
|
165
|
+
9: 9月
|
133
166
|
wide:
|
134
167
|
1: 一月
|
135
168
|
10: 十月
|
@@ -144,8 +177,20 @@ zh:
|
|
144
177
|
8: 八月
|
145
178
|
9: 九月
|
146
179
|
periods:
|
147
|
-
|
148
|
-
|
180
|
+
format:
|
181
|
+
abbreviated: :"calendars.gregorian.dayPeriods.format.wide"
|
182
|
+
narrow: :"calendars.gregorian.dayPeriods.format.abbreviated"
|
183
|
+
wide:
|
184
|
+
afternoon: 下午
|
185
|
+
am: 上午
|
186
|
+
earlyMorning: 清晨
|
187
|
+
midDay: 中午
|
188
|
+
morning: 上午
|
189
|
+
night: 晚上
|
190
|
+
noon: 中午
|
191
|
+
pm: 下午
|
192
|
+
weeHours: 凌晨
|
193
|
+
stand-alone: {}
|
149
194
|
quarters:
|
150
195
|
format:
|
151
196
|
abbreviated:
|
@@ -153,17 +198,29 @@ zh:
|
|
153
198
|
2: 2季
|
154
199
|
3: 3季
|
155
200
|
4: 4季
|
156
|
-
narrow:
|
201
|
+
narrow:
|
202
|
+
1: 1
|
203
|
+
2: 2
|
204
|
+
3: 3
|
205
|
+
4: 4
|
157
206
|
wide:
|
158
207
|
1: 第1季度
|
159
208
|
2: 第2季度
|
160
209
|
3: 第3季度
|
161
210
|
4: 第4季度
|
162
211
|
stand-alone:
|
163
|
-
abbreviated:
|
212
|
+
abbreviated:
|
213
|
+
1: 一季度
|
214
|
+
2: 二季度
|
215
|
+
3: 三季度
|
216
|
+
4: 四季度
|
164
217
|
narrow:
|
165
218
|
1: 1
|
166
219
|
2: 2
|
167
220
|
3: 3
|
168
221
|
4: 4
|
169
|
-
wide:
|
222
|
+
wide:
|
223
|
+
1: 第一季度
|
224
|
+
2: 第二季度
|
225
|
+
3: 第三季度
|
226
|
+
4: 第四季度
|
@@ -69,7 +69,6 @@ zh:
|
|
69
69
|
cai: 其他中美印第安语系
|
70
70
|
car: 巴勒比文
|
71
71
|
cau: 其他高加索语系
|
72
|
-
cch: cch
|
73
72
|
ce: 车臣文
|
74
73
|
ceb: 宿务文
|
75
74
|
cel: 其他凯尔特语系
|
@@ -104,7 +103,7 @@ zh:
|
|
104
103
|
day: 达雅克文
|
105
104
|
de: 德文
|
106
105
|
de-AT: 奥地利德语
|
107
|
-
de-CH:
|
106
|
+
de-CH: 瑞士高地德文
|
108
107
|
del: 特拉华文
|
109
108
|
den: 司雷夫文
|
110
109
|
dgr: 多格里布文
|
@@ -154,7 +153,7 @@ zh:
|
|
154
153
|
frr: 北弗里西亚语
|
155
154
|
frs: 东弗里西亚文
|
156
155
|
fur: 弗留利文
|
157
|
-
fy:
|
156
|
+
fy: 西弗里西亚文
|
158
157
|
ga: 爱尔兰文
|
159
158
|
gaa: 加文
|
160
159
|
gay: 迦约文
|
@@ -196,9 +195,9 @@ zh:
|
|
196
195
|
ia: 国际语
|
197
196
|
iba: 伊班文
|
198
197
|
id: 印度尼西亚文
|
199
|
-
ie:
|
198
|
+
ie: 国际语(E)
|
200
199
|
ig: 伊格博文
|
201
|
-
ii:
|
200
|
+
ii: 四川彝文
|
202
201
|
ijo: 伊乔文
|
203
202
|
ik: 依奴皮维克文
|
204
203
|
ilo: 伊洛干诺文
|
@@ -220,12 +219,10 @@ zh:
|
|
220
219
|
kaa: 卡拉卡尔帕克文
|
221
220
|
kab: 卡比尔文
|
222
221
|
kac: 卡琴文
|
223
|
-
kaj: kaj
|
224
222
|
kam: 卡姆巴文
|
225
223
|
kar: 喀伦文
|
226
224
|
kaw: 卡威文
|
227
225
|
kbd: 卡巴尔达文
|
228
|
-
kcg: kcg
|
229
226
|
kfo: 科罗语
|
230
227
|
kg: 刚果文
|
231
228
|
kha: 卡西文
|
@@ -332,12 +329,12 @@ zh:
|
|
332
329
|
nog: 诺盖文
|
333
330
|
non: 古诺尔斯文
|
334
331
|
nqo: 西非书面语言
|
335
|
-
nr:
|
332
|
+
nr: 南恩德贝勒文
|
336
333
|
nso: 北索托文
|
337
334
|
nub: 努比亚语系
|
338
335
|
nv: 纳瓦霍文
|
339
|
-
nwc: "
|
340
|
-
ny:
|
336
|
+
nwc: "尼瓦尔文(Classical Newari)"
|
337
|
+
ny: 尼扬扎文
|
341
338
|
nym: 尼亚姆韦齐文
|
342
339
|
nyn: 尼昂科勒文
|
343
340
|
nyo: 尼约罗文
|
@@ -373,7 +370,7 @@ zh:
|
|
373
370
|
raj: 拉贾斯坦文
|
374
371
|
rap: 拉帕努伊文
|
375
372
|
rar: 拉罗汤加文
|
376
|
-
rm:
|
373
|
+
rm: 罗曼什文
|
377
374
|
rn: 基隆迪文
|
378
375
|
ro: 罗马尼亚文
|
379
376
|
roa: 其他拉丁语系
|
@@ -422,17 +419,18 @@ zh:
|
|
422
419
|
son: 桑海文
|
423
420
|
sq: 阿尔巴尼亚文
|
424
421
|
sr: 塞尔维亚文
|
425
|
-
srn:
|
422
|
+
srn: 苏里南汤加语
|
426
423
|
srr: 谢列尔文
|
427
424
|
ss: 斯瓦特文
|
428
425
|
ssa: 非洲撒哈拉沙漠边缘地带语言
|
429
|
-
st:
|
426
|
+
st: 南索托文
|
430
427
|
su: 巽他语
|
431
428
|
suk: 苏库马文
|
432
429
|
sus: 苏苏文
|
433
430
|
sux: 苏马文
|
434
431
|
sv: 瑞典文
|
435
432
|
sw: 斯瓦希里文
|
433
|
+
swb: 科摩罗语
|
436
434
|
syr: 叙利亚文
|
437
435
|
ta: 泰米尔文
|
438
436
|
tai: 傣语诸语言(其他)
|
@@ -471,7 +469,7 @@ zh:
|
|
471
469
|
uga: 乌加里特文
|
472
470
|
uk: 乌克兰文
|
473
471
|
umb: 翁本杜文
|
474
|
-
und:
|
472
|
+
und: 未知语言
|
475
473
|
ur: 乌尔都文
|
476
474
|
uz: 乌兹别克文
|
477
475
|
vai: 瓦伊文
|
@@ -493,6 +491,7 @@ zh:
|
|
493
491
|
yi: 依地文
|
494
492
|
yo: 约鲁巴文
|
495
493
|
ypk: 尤皮克诸语言
|
494
|
+
yue: 粤语
|
496
495
|
za: 壮语
|
497
496
|
zap: 萨波蒂克文
|
498
497
|
zen: 泽纳加文
|
@@ -16,6 +16,7 @@ zh:
|
|
16
16
|
patterns:
|
17
17
|
default: "#E0"
|
18
18
|
symbols:
|
19
|
+
alias: ""
|
19
20
|
decimal: "."
|
20
21
|
exponential: E
|
21
22
|
group: ","
|
@@ -23,8 +24,6 @@ zh:
|
|
23
24
|
list: ;
|
24
25
|
minus_sign: "-"
|
25
26
|
nan: NaN
|
26
|
-
native_zero_digit: 0
|
27
|
-
pattern_digit: "#"
|
28
27
|
per_mille: ‰
|
29
28
|
percent_sign: "%"
|
30
29
|
plus_sign: +
|
File without changes
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
|
3
|
+
# Copyright 2012 Twitter, Inc
|
4
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
5
|
+
|
6
|
+
require 'spec_helper'
|
7
|
+
|
8
|
+
include TwitterCldr
|
9
|
+
|
10
|
+
describe LocalizedArray do
|
11
|
+
describe "#code_points_to_string" do
|
12
|
+
it "transforms an array of code points into a string" do
|
13
|
+
["0074", "0077", "0069", "0074", "0074", "0065", "0072"].localize.code_points_to_string.should == "twitter"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -46,7 +46,12 @@ describe Date do
|
|
46
46
|
Date.today.localize(:th).to_short_s
|
47
47
|
end
|
48
48
|
|
49
|
-
|
49
|
+
it "should stringify with buddhist calendar" do
|
50
|
+
# Ensure that buddhist calendar data is present in th locale.
|
51
|
+
TwitterCldr.get_locale_resource(:th, :calendars)[:th][:calendars][:buddhist].should_not(
|
52
|
+
be_nil, 'buddhist calendar is missing for :th locale (check resources/locales/th/calendars.yml)'
|
53
|
+
)
|
54
|
+
|
50
55
|
#Date.today.localize(:th, :calendar_type => :buddhist).to_full_s # It doesn't support era
|
51
56
|
Date.today.localize(:th, :calendar_type => :buddhist).to_long_s
|
52
57
|
Date.today.localize(:th, :calendar_type => :buddhist).to_medium_s
|
@@ -47,7 +47,12 @@ describe DateTime do
|
|
47
47
|
DateTime.now.localize(:th).to_short_s
|
48
48
|
end
|
49
49
|
|
50
|
-
|
50
|
+
it "should stringify with buddhist calendar" do
|
51
|
+
# Ensure that buddhist calendar data is present in th locale.
|
52
|
+
TwitterCldr.get_locale_resource(:th, :calendars)[:th][:calendars][:buddhist].should_not(
|
53
|
+
be_nil, 'buddhist calendar is missing for :th locale (check resources/locales/th/calendars.yml)'
|
54
|
+
)
|
55
|
+
|
51
56
|
#DateTime.now.localize(:th, :calendar_type => :buddhist).to_full_s # It doesn't support era
|
52
57
|
DateTime.now.localize(:th, :calendar_type => :buddhist).to_long_s
|
53
58
|
DateTime.now.localize(:th, :calendar_type => :buddhist).to_medium_s
|
@@ -46,7 +46,12 @@ describe Time do
|
|
46
46
|
Time.now.localize(:th).to_short_s
|
47
47
|
end
|
48
48
|
|
49
|
-
|
49
|
+
it "should stringify with buddhist calendar" do
|
50
|
+
# Ensure that buddhist calendar data is present in th locale.
|
51
|
+
TwitterCldr.get_locale_resource(:th, :calendars)[:th][:calendars][:buddhist].should_not(
|
52
|
+
be_nil, 'buddhist calendar is missing for :th locale (check resources/locales/th/calendars.yml)'
|
53
|
+
)
|
54
|
+
|
50
55
|
#Time.now.localize(:th, :calendar_type => :buddhist).to_full_s # It doesn't support era
|
51
56
|
Time.now.localize(:th, :calendar_type => :buddhist).to_long_s
|
52
57
|
Time.now.localize(:th, :calendar_type => :buddhist).to_medium_s
|
@@ -50,7 +50,7 @@ describe LocalizedNumber do
|
|
50
50
|
number.send(method).object_id.should_not == number.object_id
|
51
51
|
end
|
52
52
|
|
53
|
-
it 'creates an object of appropriate type, but
|
53
|
+
it 'creates an object of appropriate type, but does not change the type of the original object' do
|
54
54
|
new_number = currency.send(method)
|
55
55
|
new_number.type.should == type
|
56
56
|
currency.type.should == :currency
|
@@ -66,16 +66,46 @@ describe LocalizedNumber do
|
|
66
66
|
end
|
67
67
|
|
68
68
|
describe '#to_s' do
|
69
|
-
|
69
|
+
context 'decimals' do
|
70
|
+
let(:number) { LocalizedNumber.new(10, :en) }
|
71
|
+
|
72
|
+
it 'should default precision to zero' do
|
73
|
+
mock.proxy(number.formatter).format(number.base_obj, {})
|
74
|
+
number.to_s.should == "10"
|
75
|
+
end
|
76
|
+
|
77
|
+
it 'should not overwrite precision when explicitly passed' do
|
78
|
+
mock.proxy(number.formatter).format(number.base_obj, :precision => 2)
|
79
|
+
number.to_s(:precision => 2).should == "10.00"
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
context 'currencies' do
|
84
|
+
let(:number) { LocalizedNumber.new(10, :en, :type => :currency) }
|
70
85
|
|
71
|
-
|
72
|
-
|
73
|
-
|
86
|
+
it "should default to a precision of 2" do
|
87
|
+
mock.proxy(number.formatter).format(number.base_obj, :precision => 2)
|
88
|
+
number.to_s(:precision => 2).should == "$10.00"
|
89
|
+
end
|
90
|
+
|
91
|
+
it 'should not overwrite precision when explicitly passed' do
|
92
|
+
mock.proxy(number.formatter).format(number.base_obj, :precision => 1)
|
93
|
+
number.to_s(:precision => 1).should == "$10.0"
|
94
|
+
end
|
74
95
|
end
|
75
96
|
|
76
|
-
|
77
|
-
|
78
|
-
|
97
|
+
context 'percentages' do
|
98
|
+
let(:number) { LocalizedNumber.new(10, :en, :type => :percent) }
|
99
|
+
|
100
|
+
it "should default to a precision of 0" do
|
101
|
+
mock.proxy(number.formatter).format(number.base_obj, {})
|
102
|
+
number.to_s.should == "10%"
|
103
|
+
end
|
104
|
+
|
105
|
+
it 'should not overwrite precision when explicitly passed' do
|
106
|
+
mock.proxy(number.formatter).format(number.base_obj, :precision => 1)
|
107
|
+
number.to_s(:precision => 1).should == "10.0%"
|
108
|
+
end
|
79
109
|
end
|
80
110
|
end
|
81
111
|
|