i18n 0.3.3 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of i18n might be problematic. Click here for more details.

Files changed (885) hide show
  1. data/README.textile +24 -1
  2. data/Rakefile +6 -2
  3. data/lib/i18n.rb +13 -13
  4. data/lib/i18n/backend.rb +2 -0
  5. data/lib/i18n/backend/active_record.rb +9 -13
  6. data/lib/i18n/backend/active_record/missing.rb +1 -1
  7. data/lib/i18n/backend/active_record/store_procs.rb +5 -5
  8. data/lib/i18n/backend/active_record/translation.rb +6 -4
  9. data/lib/i18n/backend/base.rb +21 -14
  10. data/lib/i18n/backend/cache.rb +1 -0
  11. data/lib/i18n/backend/cascade.rb +22 -8
  12. data/lib/i18n/backend/chain.rb +2 -1
  13. data/lib/i18n/backend/cldr.rb +100 -0
  14. data/lib/i18n/backend/fallbacks.rb +15 -3
  15. data/lib/i18n/backend/fast.rb +14 -13
  16. data/lib/i18n/backend/gettext.rb +2 -1
  17. data/lib/i18n/backend/helpers.rb +4 -16
  18. data/lib/i18n/backend/interpolation_compiler.rb +2 -2
  19. data/lib/i18n/backend/links.rb +34 -0
  20. data/lib/i18n/backend/pluralization.rb +1 -1
  21. data/lib/i18n/core_ext/hash/except.rb +8 -0
  22. data/lib/i18n/core_ext/hash/slice.rb +8 -0
  23. data/lib/i18n/core_ext/string/interpolate.rb +6 -2
  24. data/lib/i18n/exceptions.rb +1 -1
  25. data/lib/i18n/helpers/gettext.rb +3 -2
  26. data/lib/i18n/version.rb +1 -1
  27. data/test/api.rb +18 -0
  28. data/test/{cases/api → api}/active_record_test.rb +6 -5
  29. data/test/{cases/api → api}/all_features_test.rb +22 -3
  30. data/test/{cases/api → api}/cascade_test.rb +4 -3
  31. data/test/{cases/api → api}/chain_test.rb +4 -3
  32. data/test/{cases/api → api}/fallbacks_test.rb +4 -3
  33. data/test/{cases/api → api}/fast_test.rb +4 -3
  34. data/test/{cases/api → api}/pluralization_test.rb +4 -3
  35. data/test/{cases/api → api}/simple_test.rb +5 -3
  36. data/test/api/{basics.rb → tests/basics.rb} +0 -0
  37. data/test/api/{defaults.rb → tests/defaults.rb} +1 -1
  38. data/test/api/{interpolation.rb → tests/interpolation.rb} +6 -6
  39. data/test/api/{link.rb → tests/link.rb} +4 -3
  40. data/test/api/{localization → tests/localization}/date.rb +6 -2
  41. data/test/api/{localization → tests/localization}/date_time.rb +7 -5
  42. data/test/api/{localization → tests/localization}/procs.rb +0 -0
  43. data/test/api/{localization → tests/localization}/time.rb +16 -12
  44. data/test/api/{lookup.rb → tests/lookup.rb} +20 -3
  45. data/test/api/{pluralization.rb → tests/pluralization.rb} +1 -1
  46. data/test/api/{procs.rb → tests/procs.rb} +10 -1
  47. data/test/{cases/backend → backend}/active_record/missing_test.rb +12 -21
  48. data/test/{cases/backend → backend}/active_record_test.rb +11 -6
  49. data/test/{cases/backend → backend}/cache_test.rb +9 -10
  50. data/test/backend/cascade_test.rb +73 -0
  51. data/test/{cases/backend → backend}/chain_test.rb +10 -11
  52. data/test/backend/cldr_test.rb +151 -0
  53. data/test/backend/exceptions_test.rb +25 -0
  54. data/test/backend/fallbacks_test.rb +107 -0
  55. data/test/{cases/backend → backend}/fast_test.rb +7 -7
  56. data/test/{cases/backend → backend}/helpers_test.rb +7 -6
  57. data/test/{cases/backend → backend}/interpolation_compiler_test.rb +3 -2
  58. data/test/{cases/backend → backend}/metadata_test.rb +11 -12
  59. data/test/{cases/backend → backend}/pluralization_test.rb +20 -16
  60. data/test/{cases/backend → backend}/simple_test.rb +15 -15
  61. data/test/{cases/core_ext → core_ext}/string/interpolate_test.rb +26 -21
  62. data/test/{cases/gettext → gettext}/api_test.rb +11 -5
  63. data/test/{cases/gettext → gettext}/backend_test.rb +4 -4
  64. data/test/{cases/i18n_exceptions_test.rb → i18n_exceptions_test.rb} +3 -3
  65. data/test/{cases/i18n_load_path_test.rb → i18n_load_path_test.rb} +2 -2
  66. data/test/{cases/i18n_test.rb → i18n_test.rb} +15 -15
  67. data/test/{cases/locale → locale}/fallbacks_test.rb +2 -2
  68. data/test/{cases/locale → locale}/tag/rfc4646_test.rb +3 -3
  69. data/test/{cases/locale → locale}/tag/simple_test.rb +2 -2
  70. data/test/test_data/locales/cldr/de/calendars.yml +152 -0
  71. data/test/test_data/locales/cldr/de/currencies.yml +8 -0
  72. data/test/test_data/locales/cldr/de/numbers.yml +31 -0
  73. data/test/{fixtures → test_data}/locales/de.po +0 -0
  74. data/test/{fixtures → test_data}/locales/en.rb +0 -0
  75. data/test/{fixtures → test_data}/locales/en.yml +0 -0
  76. data/test/{fixtures → test_data}/locales/plurals.rb +0 -0
  77. data/test/test_helper.rb +49 -36
  78. data/vendor/cldr/common/bcp47/calendar.xml +26 -0
  79. data/vendor/cldr/common/bcp47/collation.xml +72 -0
  80. data/vendor/cldr/common/bcp47/currency.xml +177 -0
  81. data/vendor/cldr/common/bcp47/number.xml +47 -0
  82. data/vendor/cldr/common/bcp47/timezone.xml +443 -0
  83. data/vendor/cldr/common/bcp47/variant.xml +14 -0
  84. data/vendor/cldr/common/collation/af.xml +17 -0
  85. data/vendor/cldr/common/collation/ar.xml +17 -0
  86. data/vendor/cldr/common/collation/as.xml +42 -0
  87. data/vendor/cldr/common/collation/az.xml +44 -0
  88. data/vendor/cldr/common/collation/be.xml +12 -0
  89. data/vendor/cldr/common/collation/bg.xml +12 -0
  90. data/vendor/cldr/common/collation/bn.xml +99 -0
  91. data/vendor/cldr/common/collation/bn_IN.xml +733 -0
  92. data/vendor/cldr/common/collation/ca.xml +49 -0
  93. data/vendor/cldr/common/collation/cs.xml +55 -0
  94. data/vendor/cldr/common/collation/cy.xml +55 -0
  95. data/vendor/cldr/common/collation/da.xml +90 -0
  96. data/vendor/cldr/common/collation/de.xml +42 -0
  97. data/vendor/cldr/common/collation/dz.xml +525 -0
  98. data/vendor/cldr/common/collation/el.xml +14 -0
  99. data/vendor/cldr/common/collation/en.xml +24 -0
  100. data/vendor/cldr/common/collation/en_BE.xml +15 -0
  101. data/vendor/cldr/common/collation/eo.xml +33 -0
  102. data/vendor/cldr/common/collation/es.xml +59 -0
  103. data/vendor/cldr/common/collation/et.xml +34 -0
  104. data/vendor/cldr/common/collation/fa.xml +34 -0
  105. data/vendor/cldr/common/collation/fa_AF.xml +13 -0
  106. data/vendor/cldr/common/collation/fi.xml +134 -0
  107. data/vendor/cldr/common/collation/fil.xml +21 -0
  108. data/vendor/cldr/common/collation/fo.xml +88 -0
  109. data/vendor/cldr/common/collation/fr.xml +25 -0
  110. data/vendor/cldr/common/collation/gu.xml +47 -0
  111. data/vendor/cldr/common/collation/haw.xml +41 -0
  112. data/vendor/cldr/common/collation/he.xml +14 -0
  113. data/vendor/cldr/common/collation/hi.xml +62 -0
  114. data/vendor/cldr/common/collation/hr.xml +70 -0
  115. data/vendor/cldr/common/collation/hu.xml +295 -0
  116. data/vendor/cldr/common/collation/is.xml +51 -0
  117. data/vendor/cldr/common/collation/it.xml +24 -0
  118. data/vendor/cldr/common/collation/ja.xml +2419 -0
  119. data/vendor/cldr/common/collation/kk.xml +35 -0
  120. data/vendor/cldr/common/collation/kl.xml +49 -0
  121. data/vendor/cldr/common/collation/km.xml +155 -0
  122. data/vendor/cldr/common/collation/kn.xml +765 -0
  123. data/vendor/cldr/common/collation/ko.xml +976 -0
  124. data/vendor/cldr/common/collation/kok.xml +45 -0
  125. data/vendor/cldr/common/collation/ln.xml +107 -0
  126. data/vendor/cldr/common/collation/lt.xml +47 -0
  127. data/vendor/cldr/common/collation/lv.xml +75 -0
  128. data/vendor/cldr/common/collation/mk.xml +12 -0
  129. data/vendor/cldr/common/collation/ml.xml +166 -0
  130. data/vendor/cldr/common/collation/mr.xml +52 -0
  131. data/vendor/cldr/common/collation/mt.xml +33 -0
  132. data/vendor/cldr/common/collation/my.xml +980 -0
  133. data/vendor/cldr/common/collation/nb.xml +46 -0
  134. data/vendor/cldr/common/collation/nn.xml +46 -0
  135. data/vendor/cldr/common/collation/om.xml +33 -0
  136. data/vendor/cldr/common/collation/or.xml +64 -0
  137. data/vendor/cldr/common/collation/pa.xml +28 -0
  138. data/vendor/cldr/common/collation/pl.xml +41 -0
  139. data/vendor/cldr/common/collation/ps.xml +58 -0
  140. data/vendor/cldr/common/collation/ro.xml +61 -0
  141. data/vendor/cldr/common/collation/root.xml +15 -0
  142. data/vendor/cldr/common/collation/ru.xml +14 -0
  143. data/vendor/cldr/common/collation/sa.xml +898 -0
  144. data/vendor/cldr/common/collation/si.xml +47 -0
  145. data/vendor/cldr/common/collation/sk.xml +70 -0
  146. data/vendor/cldr/common/collation/sl.xml +39 -0
  147. data/vendor/cldr/common/collation/sq.xml +112 -0
  148. data/vendor/cldr/common/collation/sr.xml +12 -0
  149. data/vendor/cldr/common/collation/sr_Latn.xml +13 -0
  150. data/vendor/cldr/common/collation/sv.xml +90 -0
  151. data/vendor/cldr/common/collation/ta.xml +82 -0
  152. data/vendor/cldr/common/collation/te.xml +46 -0
  153. data/vendor/cldr/common/collation/th.xml +58 -0
  154. data/vendor/cldr/common/collation/to.xml +52 -0
  155. data/vendor/cldr/common/collation/tr.xml +35 -0
  156. data/vendor/cldr/common/collation/uk.xml +18 -0
  157. data/vendor/cldr/common/collation/ur.xml +77 -0
  158. data/vendor/cldr/common/collation/vi.xml +37 -0
  159. data/vendor/cldr/common/collation/zh.xml +544 -0
  160. data/vendor/cldr/common/collation/zh_Hant.xml +13 -0
  161. data/vendor/cldr/common/dtd/cldrTest.dtd +46 -0
  162. data/vendor/cldr/common/dtd/ldml.dtd +1198 -0
  163. data/vendor/cldr/common/dtd/ldmlBCP47.dtd +36 -0
  164. data/vendor/cldr/common/dtd/ldmlICIR.dtd +142 -0
  165. data/vendor/cldr/common/dtd/ldmlICU.dtd +111 -0
  166. data/vendor/cldr/common/dtd/ldmlOpenOffice.dtd +192 -0
  167. data/vendor/cldr/common/dtd/ldmlSupplemental.dtd +423 -0
  168. data/vendor/cldr/common/main/aa.xml +221 -0
  169. data/vendor/cldr/common/main/aa_DJ.xml +26 -0
  170. data/vendor/cldr/common/main/aa_ER.xml +11 -0
  171. data/vendor/cldr/common/main/aa_ER_SAAHO.xml +39 -0
  172. data/vendor/cldr/common/main/aa_ET.xml +10 -0
  173. data/vendor/cldr/common/main/af.xml +827 -0
  174. data/vendor/cldr/common/main/af_NA.xml +75 -0
  175. data/vendor/cldr/common/main/af_ZA.xml +10 -0
  176. data/vendor/cldr/common/main/ak.xml +194 -0
  177. data/vendor/cldr/common/main/ak_GH.xml +10 -0
  178. data/vendor/cldr/common/main/am.xml +1413 -0
  179. data/vendor/cldr/common/main/am_ET.xml +10 -0
  180. data/vendor/cldr/common/main/ar.xml +3232 -0
  181. data/vendor/cldr/common/main/ar_AE.xml +15 -0
  182. data/vendor/cldr/common/main/ar_BH.xml +15 -0
  183. data/vendor/cldr/common/main/ar_DZ.xml +44 -0
  184. data/vendor/cldr/common/main/ar_EG.xml +10 -0
  185. data/vendor/cldr/common/main/ar_IQ.xml +15 -0
  186. data/vendor/cldr/common/main/ar_JO.xml +66 -0
  187. data/vendor/cldr/common/main/ar_KW.xml +15 -0
  188. data/vendor/cldr/common/main/ar_LB.xml +67 -0
  189. data/vendor/cldr/common/main/ar_LY.xml +15 -0
  190. data/vendor/cldr/common/main/ar_MA.xml +47 -0
  191. data/vendor/cldr/common/main/ar_OM.xml +15 -0
  192. data/vendor/cldr/common/main/ar_QA.xml +50 -0
  193. data/vendor/cldr/common/main/ar_SA.xml +50 -0
  194. data/vendor/cldr/common/main/ar_SD.xml +15 -0
  195. data/vendor/cldr/common/main/ar_SY.xml +82 -0
  196. data/vendor/cldr/common/main/ar_TN.xml +75 -0
  197. data/vendor/cldr/common/main/ar_YE.xml +50 -0
  198. data/vendor/cldr/common/main/as.xml +278 -0
  199. data/vendor/cldr/common/main/as_IN.xml +10 -0
  200. data/vendor/cldr/common/main/az.xml +2718 -0
  201. data/vendor/cldr/common/main/az_AZ.xml +11 -0
  202. data/vendor/cldr/common/main/az_Cyrl.xml +85 -0
  203. data/vendor/cldr/common/main/az_Cyrl_AZ.xml +11 -0
  204. data/vendor/cldr/common/main/az_Latn.xml +10 -0
  205. data/vendor/cldr/common/main/az_Latn_AZ.xml +11 -0
  206. data/vendor/cldr/common/main/be.xml +1096 -0
  207. data/vendor/cldr/common/main/be_BY.xml +10 -0
  208. data/vendor/cldr/common/main/bg.xml +3985 -0
  209. data/vendor/cldr/common/main/bg_BG.xml +10 -0
  210. data/vendor/cldr/common/main/bn.xml +3193 -0
  211. data/vendor/cldr/common/main/bn_BD.xml +10 -0
  212. data/vendor/cldr/common/main/bn_IN.xml +36 -0
  213. data/vendor/cldr/common/main/bo.xml +449 -0
  214. data/vendor/cldr/common/main/bo_CN.xml +10 -0
  215. data/vendor/cldr/common/main/bo_IN.xml +10 -0
  216. data/vendor/cldr/common/main/bs.xml +330 -0
  217. data/vendor/cldr/common/main/bs_BA.xml +10 -0
  218. data/vendor/cldr/common/main/byn.xml +502 -0
  219. data/vendor/cldr/common/main/byn_ER.xml +10 -0
  220. data/vendor/cldr/common/main/ca.xml +3284 -0
  221. data/vendor/cldr/common/main/ca_ES.xml +10 -0
  222. data/vendor/cldr/common/main/cch.xml +189 -0
  223. data/vendor/cldr/common/main/cch_NG.xml +10 -0
  224. data/vendor/cldr/common/main/cop.xml +201 -0
  225. data/vendor/cldr/common/main/cs.xml +2588 -0
  226. data/vendor/cldr/common/main/cs_CZ.xml +10 -0
  227. data/vendor/cldr/common/main/cy.xml +783 -0
  228. data/vendor/cldr/common/main/cy_GB.xml +10 -0
  229. data/vendor/cldr/common/main/da.xml +3379 -0
  230. data/vendor/cldr/common/main/da_DK.xml +10 -0
  231. data/vendor/cldr/common/main/de.xml +3092 -0
  232. data/vendor/cldr/common/main/de_AT.xml +70 -0
  233. data/vendor/cldr/common/main/de_BE.xml +115 -0
  234. data/vendor/cldr/common/main/de_CH.xml +65 -0
  235. data/vendor/cldr/common/main/de_DE.xml +10 -0
  236. data/vendor/cldr/common/main/de_LI.xml +23 -0
  237. data/vendor/cldr/common/main/de_LU.xml +19 -0
  238. data/vendor/cldr/common/main/dv.xml +228 -0
  239. data/vendor/cldr/common/main/dv_MV.xml +10 -0
  240. data/vendor/cldr/common/main/dz.xml +412 -0
  241. data/vendor/cldr/common/main/dz_BT.xml +10 -0
  242. data/vendor/cldr/common/main/ee.xml +197 -0
  243. data/vendor/cldr/common/main/ee_GH.xml +10 -0
  244. data/vendor/cldr/common/main/ee_TG.xml +10 -0
  245. data/vendor/cldr/common/main/el.xml +4148 -0
  246. data/vendor/cldr/common/main/el_CY.xml +20 -0
  247. data/vendor/cldr/common/main/el_GR.xml +10 -0
  248. data/vendor/cldr/common/main/el_POLYTON.xml +542 -0
  249. data/vendor/cldr/common/main/en.xml +4150 -0
  250. data/vendor/cldr/common/main/en_AS.xml +10 -0
  251. data/vendor/cldr/common/main/en_AU.xml +161 -0
  252. data/vendor/cldr/common/main/en_BE.xml +159 -0
  253. data/vendor/cldr/common/main/en_BW.xml +131 -0
  254. data/vendor/cldr/common/main/en_BZ.xml +161 -0
  255. data/vendor/cldr/common/main/en_CA.xml +127 -0
  256. data/vendor/cldr/common/main/en_Dsrt.xml +1029 -0
  257. data/vendor/cldr/common/main/en_Dsrt_US.xml +11 -0
  258. data/vendor/cldr/common/main/en_GB.xml +170 -0
  259. data/vendor/cldr/common/main/en_GU.xml +10 -0
  260. data/vendor/cldr/common/main/en_HK.xml +57 -0
  261. data/vendor/cldr/common/main/en_IE.xml +150 -0
  262. data/vendor/cldr/common/main/en_IN.xml +146 -0
  263. data/vendor/cldr/common/main/en_JM.xml +27 -0
  264. data/vendor/cldr/common/main/en_MH.xml +10 -0
  265. data/vendor/cldr/common/main/en_MP.xml +10 -0
  266. data/vendor/cldr/common/main/en_MT.xml +155 -0
  267. data/vendor/cldr/common/main/en_NA.xml +27 -0
  268. data/vendor/cldr/common/main/en_NZ.xml +158 -0
  269. data/vendor/cldr/common/main/en_PH.xml +17 -0
  270. data/vendor/cldr/common/main/en_PK.xml +154 -0
  271. data/vendor/cldr/common/main/en_SG.xml +48 -0
  272. data/vendor/cldr/common/main/en_Shaw.xml +188 -0
  273. data/vendor/cldr/common/main/en_TT.xml +27 -0
  274. data/vendor/cldr/common/main/en_UM.xml +10 -0
  275. data/vendor/cldr/common/main/en_US.xml +10 -0
  276. data/vendor/cldr/common/main/en_US_POSIX.xml +54 -0
  277. data/vendor/cldr/common/main/en_VI.xml +10 -0
  278. data/vendor/cldr/common/main/en_ZA.xml +153 -0
  279. data/vendor/cldr/common/main/en_ZW.xml +145 -0
  280. data/vendor/cldr/common/main/eo.xml +636 -0
  281. data/vendor/cldr/common/main/es.xml +3746 -0
  282. data/vendor/cldr/common/main/es_AR.xml +130 -0
  283. data/vendor/cldr/common/main/es_BO.xml +10 -0
  284. data/vendor/cldr/common/main/es_CL.xml +160 -0
  285. data/vendor/cldr/common/main/es_CO.xml +128 -0
  286. data/vendor/cldr/common/main/es_CR.xml +10 -0
  287. data/vendor/cldr/common/main/es_DO.xml +16 -0
  288. data/vendor/cldr/common/main/es_EC.xml +123 -0
  289. data/vendor/cldr/common/main/es_ES.xml +10 -0
  290. data/vendor/cldr/common/main/es_GT.xml +115 -0
  291. data/vendor/cldr/common/main/es_HN.xml +115 -0
  292. data/vendor/cldr/common/main/es_MX.xml +21 -0
  293. data/vendor/cldr/common/main/es_NI.xml +16 -0
  294. data/vendor/cldr/common/main/es_PA.xml +110 -0
  295. data/vendor/cldr/common/main/es_PE.xml +112 -0
  296. data/vendor/cldr/common/main/es_PR.xml +115 -0
  297. data/vendor/cldr/common/main/es_PY.xml +19 -0
  298. data/vendor/cldr/common/main/es_SV.xml +16 -0
  299. data/vendor/cldr/common/main/es_US.xml +148 -0
  300. data/vendor/cldr/common/main/es_UY.xml +24 -0
  301. data/vendor/cldr/common/main/es_VE.xml +19 -0
  302. data/vendor/cldr/common/main/et.xml +2045 -0
  303. data/vendor/cldr/common/main/et_EE.xml +10 -0
  304. data/vendor/cldr/common/main/eu.xml +1004 -0
  305. data/vendor/cldr/common/main/eu_ES.xml +10 -0
  306. data/vendor/cldr/common/main/fa.xml +3334 -0
  307. data/vendor/cldr/common/main/fa_AF.xml +309 -0
  308. data/vendor/cldr/common/main/fa_IR.xml +10 -0
  309. data/vendor/cldr/common/main/fi.xml +3870 -0
  310. data/vendor/cldr/common/main/fi_FI.xml +10 -0
  311. data/vendor/cldr/common/main/fil.xml +1031 -0
  312. data/vendor/cldr/common/main/fil_PH.xml +10 -0
  313. data/vendor/cldr/common/main/fo.xml +799 -0
  314. data/vendor/cldr/common/main/fo_FO.xml +10 -0
  315. data/vendor/cldr/common/main/fr.xml +5705 -0
  316. data/vendor/cldr/common/main/fr_BE.xml +104 -0
  317. data/vendor/cldr/common/main/fr_CA.xml +152 -0
  318. data/vendor/cldr/common/main/fr_CH.xml +125 -0
  319. data/vendor/cldr/common/main/fr_FR.xml +10 -0
  320. data/vendor/cldr/common/main/fr_LU.xml +23 -0
  321. data/vendor/cldr/common/main/fr_MC.xml +10 -0
  322. data/vendor/cldr/common/main/fr_SN.xml +10 -0
  323. data/vendor/cldr/common/main/fur.xml +1226 -0
  324. data/vendor/cldr/common/main/fur_IT.xml +10 -0
  325. data/vendor/cldr/common/main/ga.xml +1504 -0
  326. data/vendor/cldr/common/main/ga_IE.xml +10 -0
  327. data/vendor/cldr/common/main/gaa.xml +194 -0
  328. data/vendor/cldr/common/main/gaa_GH.xml +10 -0
  329. data/vendor/cldr/common/main/gez.xml +504 -0
  330. data/vendor/cldr/common/main/gez_ER.xml +10 -0
  331. data/vendor/cldr/common/main/gez_ET.xml +10 -0
  332. data/vendor/cldr/common/main/gl.xml +1364 -0
  333. data/vendor/cldr/common/main/gl_ES.xml +10 -0
  334. data/vendor/cldr/common/main/gsw.xml +2921 -0
  335. data/vendor/cldr/common/main/gsw_CH.xml +10 -0
  336. data/vendor/cldr/common/main/gu.xml +1165 -0
  337. data/vendor/cldr/common/main/gu_IN.xml +10 -0
  338. data/vendor/cldr/common/main/gv.xml +201 -0
  339. data/vendor/cldr/common/main/gv_GB.xml +10 -0
  340. data/vendor/cldr/common/main/ha.xml +380 -0
  341. data/vendor/cldr/common/main/ha_Arab.xml +95 -0
  342. data/vendor/cldr/common/main/ha_Arab_NG.xml +11 -0
  343. data/vendor/cldr/common/main/ha_Arab_SD.xml +11 -0
  344. data/vendor/cldr/common/main/ha_GH.xml +11 -0
  345. data/vendor/cldr/common/main/ha_Latn.xml +10 -0
  346. data/vendor/cldr/common/main/ha_Latn_GH.xml +11 -0
  347. data/vendor/cldr/common/main/ha_Latn_NE.xml +11 -0
  348. data/vendor/cldr/common/main/ha_Latn_NG.xml +11 -0
  349. data/vendor/cldr/common/main/ha_NE.xml +11 -0
  350. data/vendor/cldr/common/main/ha_NG.xml +11 -0
  351. data/vendor/cldr/common/main/ha_SD.xml +11 -0
  352. data/vendor/cldr/common/main/haw.xml +219 -0
  353. data/vendor/cldr/common/main/haw_US.xml +10 -0
  354. data/vendor/cldr/common/main/he.xml +2809 -0
  355. data/vendor/cldr/common/main/he_IL.xml +10 -0
  356. data/vendor/cldr/common/main/hi.xml +3376 -0
  357. data/vendor/cldr/common/main/hi_IN.xml +10 -0
  358. data/vendor/cldr/common/main/hr.xml +3765 -0
  359. data/vendor/cldr/common/main/hr_HR.xml +10 -0
  360. data/vendor/cldr/common/main/hu.xml +3767 -0
  361. data/vendor/cldr/common/main/hu_HU.xml +10 -0
  362. data/vendor/cldr/common/main/hy.xml +594 -0
  363. data/vendor/cldr/common/main/hy_AM.xml +10 -0
  364. data/vendor/cldr/common/main/hy_AM_REVISED.xml +40 -0
  365. data/vendor/cldr/common/main/ia.xml +553 -0
  366. data/vendor/cldr/common/main/id.xml +1342 -0
  367. data/vendor/cldr/common/main/id_ID.xml +10 -0
  368. data/vendor/cldr/common/main/ig.xml +198 -0
  369. data/vendor/cldr/common/main/ig_NG.xml +10 -0
  370. data/vendor/cldr/common/main/ii.xml +255 -0
  371. data/vendor/cldr/common/main/ii_CN.xml +10 -0
  372. data/vendor/cldr/common/main/in.xml +10 -0
  373. data/vendor/cldr/common/main/is.xml +2394 -0
  374. data/vendor/cldr/common/main/is_IS.xml +10 -0
  375. data/vendor/cldr/common/main/it.xml +3028 -0
  376. data/vendor/cldr/common/main/it_CH.xml +117 -0
  377. data/vendor/cldr/common/main/it_IT.xml +10 -0
  378. data/vendor/cldr/common/main/iu.xml +182 -0
  379. data/vendor/cldr/common/main/iw.xml +10 -0
  380. data/vendor/cldr/common/main/ja.xml +3816 -0
  381. data/vendor/cldr/common/main/ja_JP.xml +10 -0
  382. data/vendor/cldr/common/main/ka.xml +2160 -0
  383. data/vendor/cldr/common/main/ka_GE.xml +10 -0
  384. data/vendor/cldr/common/main/kaj.xml +189 -0
  385. data/vendor/cldr/common/main/kaj_NG.xml +10 -0
  386. data/vendor/cldr/common/main/kam.xml +188 -0
  387. data/vendor/cldr/common/main/kam_KE.xml +10 -0
  388. data/vendor/cldr/common/main/kcg.xml +189 -0
  389. data/vendor/cldr/common/main/kcg_NG.xml +10 -0
  390. data/vendor/cldr/common/main/kfo.xml +189 -0
  391. data/vendor/cldr/common/main/kfo_CI.xml +10 -0
  392. data/vendor/cldr/common/main/kk.xml +389 -0
  393. data/vendor/cldr/common/main/kk_Cyrl.xml +10 -0
  394. data/vendor/cldr/common/main/kk_Cyrl_KZ.xml +11 -0
  395. data/vendor/cldr/common/main/kk_KZ.xml +11 -0
  396. data/vendor/cldr/common/main/kl.xml +208 -0
  397. data/vendor/cldr/common/main/kl_GL.xml +10 -0
  398. data/vendor/cldr/common/main/km.xml +668 -0
  399. data/vendor/cldr/common/main/km_KH.xml +10 -0
  400. data/vendor/cldr/common/main/kn.xml +1166 -0
  401. data/vendor/cldr/common/main/kn_IN.xml +10 -0
  402. data/vendor/cldr/common/main/ko.xml +3961 -0
  403. data/vendor/cldr/common/main/ko_KR.xml +10 -0
  404. data/vendor/cldr/common/main/kok.xml +364 -0
  405. data/vendor/cldr/common/main/kok_IN.xml +10 -0
  406. data/vendor/cldr/common/main/kpe.xml +188 -0
  407. data/vendor/cldr/common/main/kpe_GN.xml +17 -0
  408. data/vendor/cldr/common/main/kpe_LR.xml +10 -0
  409. data/vendor/cldr/common/main/ku.xml +159 -0
  410. data/vendor/cldr/common/main/ku_Arab.xml +10 -0
  411. data/vendor/cldr/common/main/ku_Arab_IQ.xml +11 -0
  412. data/vendor/cldr/common/main/ku_Arab_IR.xml +11 -0
  413. data/vendor/cldr/common/main/ku_Arab_SY.xml +11 -0
  414. data/vendor/cldr/common/main/ku_IQ.xml +11 -0
  415. data/vendor/cldr/common/main/ku_IR.xml +11 -0
  416. data/vendor/cldr/common/main/ku_Latn.xml +190 -0
  417. data/vendor/cldr/common/main/ku_Latn_TR.xml +11 -0
  418. data/vendor/cldr/common/main/ku_SY.xml +11 -0
  419. data/vendor/cldr/common/main/ku_TR.xml +11 -0
  420. data/vendor/cldr/common/main/kw.xml +201 -0
  421. data/vendor/cldr/common/main/kw_GB.xml +10 -0
  422. data/vendor/cldr/common/main/ky.xml +276 -0
  423. data/vendor/cldr/common/main/ky_KG.xml +10 -0
  424. data/vendor/cldr/common/main/ln.xml +492 -0
  425. data/vendor/cldr/common/main/ln_CD.xml +10 -0
  426. data/vendor/cldr/common/main/ln_CG.xml +10 -0
  427. data/vendor/cldr/common/main/lo.xml +624 -0
  428. data/vendor/cldr/common/main/lo_LA.xml +10 -0
  429. data/vendor/cldr/common/main/lt.xml +3394 -0
  430. data/vendor/cldr/common/main/lt_LT.xml +10 -0
  431. data/vendor/cldr/common/main/lv.xml +3086 -0
  432. data/vendor/cldr/common/main/lv_LV.xml +10 -0
  433. data/vendor/cldr/common/main/mk.xml +2323 -0
  434. data/vendor/cldr/common/main/mk_MK.xml +10 -0
  435. data/vendor/cldr/common/main/ml.xml +4443 -0
  436. data/vendor/cldr/common/main/ml_IN.xml +10 -0
  437. data/vendor/cldr/common/main/mn.xml +320 -0
  438. data/vendor/cldr/common/main/mn_CN.xml +11 -0
  439. data/vendor/cldr/common/main/mn_Cyrl.xml +10 -0
  440. data/vendor/cldr/common/main/mn_Cyrl_MN.xml +11 -0
  441. data/vendor/cldr/common/main/mn_MN.xml +11 -0
  442. data/vendor/cldr/common/main/mn_Mong.xml +17 -0
  443. data/vendor/cldr/common/main/mn_Mong_CN.xml +11 -0
  444. data/vendor/cldr/common/main/mo.xml +10 -0
  445. data/vendor/cldr/common/main/mr.xml +1199 -0
  446. data/vendor/cldr/common/main/mr_IN.xml +10 -0
  447. data/vendor/cldr/common/main/ms.xml +558 -0
  448. data/vendor/cldr/common/main/ms_BN.xml +135 -0
  449. data/vendor/cldr/common/main/ms_MY.xml +10 -0
  450. data/vendor/cldr/common/main/mt.xml +1146 -0
  451. data/vendor/cldr/common/main/mt_MT.xml +10 -0
  452. data/vendor/cldr/common/main/my.xml +1590 -0
  453. data/vendor/cldr/common/main/my_MM.xml +10 -0
  454. data/vendor/cldr/common/main/nb.xml +3300 -0
  455. data/vendor/cldr/common/main/nb_NO.xml +10 -0
  456. data/vendor/cldr/common/main/nds.xml +1151 -0
  457. data/vendor/cldr/common/main/nds_DE.xml +10 -0
  458. data/vendor/cldr/common/main/ne.xml +1387 -0
  459. data/vendor/cldr/common/main/ne_IN.xml +10 -0
  460. data/vendor/cldr/common/main/ne_NP.xml +10 -0
  461. data/vendor/cldr/common/main/nl.xml +3888 -0
  462. data/vendor/cldr/common/main/nl_BE.xml +81 -0
  463. data/vendor/cldr/common/main/nl_NL.xml +10 -0
  464. data/vendor/cldr/common/main/nn.xml +2999 -0
  465. data/vendor/cldr/common/main/nn_NO.xml +10 -0
  466. data/vendor/cldr/common/main/no.xml +10 -0
  467. data/vendor/cldr/common/main/nr.xml +227 -0
  468. data/vendor/cldr/common/main/nr_ZA.xml +10 -0
  469. data/vendor/cldr/common/main/nso.xml +229 -0
  470. data/vendor/cldr/common/main/nso_ZA.xml +10 -0
  471. data/vendor/cldr/common/main/ny.xml +193 -0
  472. data/vendor/cldr/common/main/ny_MW.xml +10 -0
  473. data/vendor/cldr/common/main/oc.xml +280 -0
  474. data/vendor/cldr/common/main/oc_FR.xml +10 -0
  475. data/vendor/cldr/common/main/om.xml +328 -0
  476. data/vendor/cldr/common/main/om_ET.xml +10 -0
  477. data/vendor/cldr/common/main/om_KE.xml +10 -0
  478. data/vendor/cldr/common/main/or.xml +1146 -0
  479. data/vendor/cldr/common/main/or_IN.xml +10 -0
  480. data/vendor/cldr/common/main/pa.xml +314 -0
  481. data/vendor/cldr/common/main/pa_Arab.xml +135 -0
  482. data/vendor/cldr/common/main/pa_Arab_PK.xml +11 -0
  483. data/vendor/cldr/common/main/pa_Guru.xml +10 -0
  484. data/vendor/cldr/common/main/pa_Guru_IN.xml +11 -0
  485. data/vendor/cldr/common/main/pa_IN.xml +11 -0
  486. data/vendor/cldr/common/main/pa_PK.xml +11 -0
  487. data/vendor/cldr/common/main/pl.xml +3124 -0
  488. data/vendor/cldr/common/main/pl_PL.xml +10 -0
  489. data/vendor/cldr/common/main/ps.xml +425 -0
  490. data/vendor/cldr/common/main/ps_AF.xml +10 -0
  491. data/vendor/cldr/common/main/pt.xml +4373 -0
  492. data/vendor/cldr/common/main/pt_BR.xml +10 -0
  493. data/vendor/cldr/common/main/pt_PT.xml +1866 -0
  494. data/vendor/cldr/common/main/ro.xml +2515 -0
  495. data/vendor/cldr/common/main/ro_MD.xml +10 -0
  496. data/vendor/cldr/common/main/ro_RO.xml +10 -0
  497. data/vendor/cldr/common/main/root.xml +3193 -0
  498. data/vendor/cldr/common/main/ru.xml +3992 -0
  499. data/vendor/cldr/common/main/ru_RU.xml +10 -0
  500. data/vendor/cldr/common/main/ru_UA.xml +117 -0
  501. data/vendor/cldr/common/main/rw.xml +306 -0
  502. data/vendor/cldr/common/main/rw_RW.xml +10 -0
  503. data/vendor/cldr/common/main/sa.xml +152 -0
  504. data/vendor/cldr/common/main/sa_IN.xml +10 -0
  505. data/vendor/cldr/common/main/se.xml +745 -0
  506. data/vendor/cldr/common/main/se_FI.xml +250 -0
  507. data/vendor/cldr/common/main/se_NO.xml +10 -0
  508. data/vendor/cldr/common/main/sh.xml +10 -0
  509. data/vendor/cldr/common/main/sh_BA.xml +11 -0
  510. data/vendor/cldr/common/main/sh_CS.xml +11 -0
  511. data/vendor/cldr/common/main/sh_YU.xml +11 -0
  512. data/vendor/cldr/common/main/si.xml +242 -0
  513. data/vendor/cldr/common/main/si_LK.xml +10 -0
  514. data/vendor/cldr/common/main/sid.xml +249 -0
  515. data/vendor/cldr/common/main/sid_ET.xml +10 -0
  516. data/vendor/cldr/common/main/sk.xml +1923 -0
  517. data/vendor/cldr/common/main/sk_SK.xml +10 -0
  518. data/vendor/cldr/common/main/sl.xml +2573 -0
  519. data/vendor/cldr/common/main/sl_SI.xml +10 -0
  520. data/vendor/cldr/common/main/so.xml +560 -0
  521. data/vendor/cldr/common/main/so_DJ.xml +10 -0
  522. data/vendor/cldr/common/main/so_ET.xml +10 -0
  523. data/vendor/cldr/common/main/so_KE.xml +10 -0
  524. data/vendor/cldr/common/main/so_SO.xml +10 -0
  525. data/vendor/cldr/common/main/sq.xml +657 -0
  526. data/vendor/cldr/common/main/sq_AL.xml +10 -0
  527. data/vendor/cldr/common/main/sr.xml +5983 -0
  528. data/vendor/cldr/common/main/sr_BA.xml +11 -0
  529. data/vendor/cldr/common/main/sr_CS.xml +11 -0
  530. data/vendor/cldr/common/main/sr_Cyrl.xml +10 -0
  531. data/vendor/cldr/common/main/sr_Cyrl_BA.xml +104 -0
  532. data/vendor/cldr/common/main/sr_Cyrl_CS.xml +12 -0
  533. data/vendor/cldr/common/main/sr_Cyrl_ME.xml +11 -0
  534. data/vendor/cldr/common/main/sr_Cyrl_RS.xml +11 -0
  535. data/vendor/cldr/common/main/sr_Cyrl_YU.xml +12 -0
  536. data/vendor/cldr/common/main/sr_Latn.xml +5382 -0
  537. data/vendor/cldr/common/main/sr_Latn_BA.xml +11 -0
  538. data/vendor/cldr/common/main/sr_Latn_CS.xml +12 -0
  539. data/vendor/cldr/common/main/sr_Latn_ME.xml +55 -0
  540. data/vendor/cldr/common/main/sr_Latn_RS.xml +11 -0
  541. data/vendor/cldr/common/main/sr_Latn_YU.xml +12 -0
  542. data/vendor/cldr/common/main/sr_ME.xml +11 -0
  543. data/vendor/cldr/common/main/sr_RS.xml +11 -0
  544. data/vendor/cldr/common/main/sr_YU.xml +11 -0
  545. data/vendor/cldr/common/main/ss.xml +231 -0
  546. data/vendor/cldr/common/main/ss_SZ.xml +11 -0
  547. data/vendor/cldr/common/main/ss_ZA.xml +10 -0
  548. data/vendor/cldr/common/main/st.xml +321 -0
  549. data/vendor/cldr/common/main/st_LS.xml +17 -0
  550. data/vendor/cldr/common/main/st_ZA.xml +10 -0
  551. data/vendor/cldr/common/main/sv.xml +5088 -0
  552. data/vendor/cldr/common/main/sv_FI.xml +48 -0
  553. data/vendor/cldr/common/main/sv_SE.xml +10 -0
  554. data/vendor/cldr/common/main/sw.xml +400 -0
  555. data/vendor/cldr/common/main/sw_KE.xml +19 -0
  556. data/vendor/cldr/common/main/sw_TZ.xml +10 -0
  557. data/vendor/cldr/common/main/syr.xml +129 -0
  558. data/vendor/cldr/common/main/syr_SY.xml +10 -0
  559. data/vendor/cldr/common/main/ta.xml +1195 -0
  560. data/vendor/cldr/common/main/ta_IN.xml +10 -0
  561. data/vendor/cldr/common/main/te.xml +1159 -0
  562. data/vendor/cldr/common/main/te_IN.xml +10 -0
  563. data/vendor/cldr/common/main/tg.xml +224 -0
  564. data/vendor/cldr/common/main/tg_Cyrl.xml +10 -0
  565. data/vendor/cldr/common/main/tg_Cyrl_TJ.xml +11 -0
  566. data/vendor/cldr/common/main/tg_TJ.xml +11 -0
  567. data/vendor/cldr/common/main/th.xml +4466 -0
  568. data/vendor/cldr/common/main/th_TH.xml +10 -0
  569. data/vendor/cldr/common/main/ti.xml +326 -0
  570. data/vendor/cldr/common/main/ti_ER.xml +124 -0
  571. data/vendor/cldr/common/main/ti_ET.xml +10 -0
  572. data/vendor/cldr/common/main/tig.xml +501 -0
  573. data/vendor/cldr/common/main/tig_ER.xml +10 -0
  574. data/vendor/cldr/common/main/tl.xml +10 -0
  575. data/vendor/cldr/common/main/tn.xml +313 -0
  576. data/vendor/cldr/common/main/tn_ZA.xml +10 -0
  577. data/vendor/cldr/common/main/to.xml +613 -0
  578. data/vendor/cldr/common/main/to_TO.xml +10 -0
  579. data/vendor/cldr/common/main/tr.xml +3782 -0
  580. data/vendor/cldr/common/main/tr_TR.xml +10 -0
  581. data/vendor/cldr/common/main/trv.xml +562 -0
  582. data/vendor/cldr/common/main/trv_TW.xml +10 -0
  583. data/vendor/cldr/common/main/ts.xml +173 -0
  584. data/vendor/cldr/common/main/ts_ZA.xml +10 -0
  585. data/vendor/cldr/common/main/tt.xml +105 -0
  586. data/vendor/cldr/common/main/tt_RU.xml +10 -0
  587. data/vendor/cldr/common/main/ug.xml +40 -0
  588. data/vendor/cldr/common/main/ug_Arab.xml +10 -0
  589. data/vendor/cldr/common/main/ug_Arab_CN.xml +11 -0
  590. data/vendor/cldr/common/main/ug_CN.xml +11 -0
  591. data/vendor/cldr/common/main/uk.xml +3855 -0
  592. data/vendor/cldr/common/main/uk_UA.xml +10 -0
  593. data/vendor/cldr/common/main/ur.xml +1027 -0
  594. data/vendor/cldr/common/main/ur_IN.xml +33 -0
  595. data/vendor/cldr/common/main/ur_PK.xml +10 -0
  596. data/vendor/cldr/common/main/uz.xml +235 -0
  597. data/vendor/cldr/common/main/uz_AF.xml +11 -0
  598. data/vendor/cldr/common/main/uz_Arab.xml +172 -0
  599. data/vendor/cldr/common/main/uz_Arab_AF.xml +12 -0
  600. data/vendor/cldr/common/main/uz_Cyrl.xml +11 -0
  601. data/vendor/cldr/common/main/uz_Cyrl_UZ.xml +11 -0
  602. data/vendor/cldr/common/main/uz_Latn.xml +170 -0
  603. data/vendor/cldr/common/main/uz_Latn_UZ.xml +11 -0
  604. data/vendor/cldr/common/main/uz_UZ.xml +11 -0
  605. data/vendor/cldr/common/main/ve.xml +194 -0
  606. data/vendor/cldr/common/main/ve_ZA.xml +10 -0
  607. data/vendor/cldr/common/main/vi.xml +1065 -0
  608. data/vendor/cldr/common/main/vi_VN.xml +10 -0
  609. data/vendor/cldr/common/main/wal.xml +350 -0
  610. data/vendor/cldr/common/main/wal_ET.xml +10 -0
  611. data/vendor/cldr/common/main/wo.xml +42 -0
  612. data/vendor/cldr/common/main/wo_Latn.xml +10 -0
  613. data/vendor/cldr/common/main/wo_Latn_SN.xml +11 -0
  614. data/vendor/cldr/common/main/wo_SN.xml +10 -0
  615. data/vendor/cldr/common/main/xh.xml +261 -0
  616. data/vendor/cldr/common/main/xh_ZA.xml +10 -0
  617. data/vendor/cldr/common/main/yo.xml +240 -0
  618. data/vendor/cldr/common/main/yo_NG.xml +10 -0
  619. data/vendor/cldr/common/main/zh.xml +4612 -0
  620. data/vendor/cldr/common/main/zh_CN.xml +11 -0
  621. data/vendor/cldr/common/main/zh_HK.xml +11 -0
  622. data/vendor/cldr/common/main/zh_Hans.xml +10 -0
  623. data/vendor/cldr/common/main/zh_Hans_CN.xml +11 -0
  624. data/vendor/cldr/common/main/zh_Hans_HK.xml +18 -0
  625. data/vendor/cldr/common/main/zh_Hans_MO.xml +11 -0
  626. data/vendor/cldr/common/main/zh_Hans_SG.xml +88 -0
  627. data/vendor/cldr/common/main/zh_Hant.xml +3791 -0
  628. data/vendor/cldr/common/main/zh_Hant_HK.xml +191 -0
  629. data/vendor/cldr/common/main/zh_Hant_MO.xml +117 -0
  630. data/vendor/cldr/common/main/zh_Hant_TW.xml +11 -0
  631. data/vendor/cldr/common/main/zh_MO.xml +11 -0
  632. data/vendor/cldr/common/main/zh_SG.xml +11 -0
  633. data/vendor/cldr/common/main/zh_TW.xml +11 -0
  634. data/vendor/cldr/common/main/zu.xml +334 -0
  635. data/vendor/cldr/common/main/zu_ZA.xml +10 -0
  636. data/vendor/cldr/common/rbnf/af.xml +105 -0
  637. data/vendor/cldr/common/rbnf/am.xml +68 -0
  638. data/vendor/cldr/common/rbnf/ar.xml +247 -0
  639. data/vendor/cldr/common/rbnf/az.xml +109 -0
  640. data/vendor/cldr/common/rbnf/be.xml +159 -0
  641. data/vendor/cldr/common/rbnf/bg.xml +105 -0
  642. data/vendor/cldr/common/rbnf/bs.xml +129 -0
  643. data/vendor/cldr/common/rbnf/ca.xml +278 -0
  644. data/vendor/cldr/common/rbnf/cs.xml +138 -0
  645. data/vendor/cldr/common/rbnf/cy.xml +116 -0
  646. data/vendor/cldr/common/rbnf/da.xml +81 -0
  647. data/vendor/cldr/common/rbnf/de.xml +130 -0
  648. data/vendor/cldr/common/rbnf/el.xml +310 -0
  649. data/vendor/cldr/common/rbnf/en.xml +174 -0
  650. data/vendor/cldr/common/rbnf/eo.xml +52 -0
  651. data/vendor/cldr/common/rbnf/es.xml +266 -0
  652. data/vendor/cldr/common/rbnf/et.xml +51 -0
  653. data/vendor/cldr/common/rbnf/fa.xml +64 -0
  654. data/vendor/cldr/common/rbnf/fa_AF.xml +63 -0
  655. data/vendor/cldr/common/rbnf/fi.xml +53 -0
  656. data/vendor/cldr/common/rbnf/fil.xml +70 -0
  657. data/vendor/cldr/common/rbnf/fo.xml +124 -0
  658. data/vendor/cldr/common/rbnf/fr.xml +147 -0
  659. data/vendor/cldr/common/rbnf/fr_BE.xml +152 -0
  660. data/vendor/cldr/common/rbnf/fr_CH.xml +152 -0
  661. data/vendor/cldr/common/rbnf/ga.xml +240 -0
  662. data/vendor/cldr/common/rbnf/he.xml +401 -0
  663. data/vendor/cldr/common/rbnf/hi.xml +137 -0
  664. data/vendor/cldr/common/rbnf/hr.xml +159 -0
  665. data/vendor/cldr/common/rbnf/hu.xml +55 -0
  666. data/vendor/cldr/common/rbnf/hy.xml +50 -0
  667. data/vendor/cldr/common/rbnf/id.xml +57 -0
  668. data/vendor/cldr/common/rbnf/is.xml +124 -0
  669. data/vendor/cldr/common/rbnf/it.xml +237 -0
  670. data/vendor/cldr/common/rbnf/ja.xml +78 -0
  671. data/vendor/cldr/common/rbnf/ka.xml +76 -0
  672. data/vendor/cldr/common/rbnf/kl.xml +82 -0
  673. data/vendor/cldr/common/rbnf/ko.xml +82 -0
  674. data/vendor/cldr/common/rbnf/lo.xml +57 -0
  675. data/vendor/cldr/common/rbnf/lt.xml +89 -0
  676. data/vendor/cldr/common/rbnf/lv.xml +94 -0
  677. data/vendor/cldr/common/rbnf/mk.xml +105 -0
  678. data/vendor/cldr/common/rbnf/ms.xml +60 -0
  679. data/vendor/cldr/common/rbnf/mt.xml +418 -0
  680. data/vendor/cldr/common/rbnf/nb.xml +80 -0
  681. data/vendor/cldr/common/rbnf/nci.xml +109 -0
  682. data/vendor/cldr/common/rbnf/nl.xml +112 -0
  683. data/vendor/cldr/common/rbnf/nn.xml +79 -0
  684. data/vendor/cldr/common/rbnf/pl.xml +131 -0
  685. data/vendor/cldr/common/rbnf/pt.xml +221 -0
  686. data/vendor/cldr/common/rbnf/pt_PT.xml +206 -0
  687. data/vendor/cldr/common/rbnf/ro.xml +101 -0
  688. data/vendor/cldr/common/rbnf/root.xml +527 -0
  689. data/vendor/cldr/common/rbnf/ru.xml +144 -0
  690. data/vendor/cldr/common/rbnf/se.xml +47 -0
  691. data/vendor/cldr/common/rbnf/sk.xml +117 -0
  692. data/vendor/cldr/common/rbnf/sl.xml +141 -0
  693. data/vendor/cldr/common/rbnf/sq.xml +75 -0
  694. data/vendor/cldr/common/rbnf/sr.xml +161 -0
  695. data/vendor/cldr/common/rbnf/sr_Latn.xml +160 -0
  696. data/vendor/cldr/common/rbnf/sv.xml +241 -0
  697. data/vendor/cldr/common/rbnf/ta.xml +71 -0
  698. data/vendor/cldr/common/rbnf/th.xml +57 -0
  699. data/vendor/cldr/common/rbnf/tr.xml +121 -0
  700. data/vendor/cldr/common/rbnf/uk.xml +159 -0
  701. data/vendor/cldr/common/rbnf/vi.xml +51 -0
  702. data/vendor/cldr/common/rbnf/zh.xml +146 -0
  703. data/vendor/cldr/common/rbnf/zh_Hant.xml +147 -0
  704. data/vendor/cldr/common/segments/el.xml +18 -0
  705. data/vendor/cldr/common/segments/en_US_POSIX.xml +22 -0
  706. data/vendor/cldr/common/segments/ja.xml +23 -0
  707. data/vendor/cldr/common/segments/root.xml +629 -0
  708. data/vendor/cldr/common/segments/th.xml +25 -0
  709. data/vendor/cldr/common/supplemental/characters.xml +491 -0
  710. data/vendor/cldr/common/supplemental/likelySubtags.xml +463 -0
  711. data/vendor/cldr/common/supplemental/metazoneInfo.xml +1409 -0
  712. data/vendor/cldr/common/supplemental/numberingSystems.xml +42 -0
  713. data/vendor/cldr/common/supplemental/plurals.xml +76 -0
  714. data/vendor/cldr/common/supplemental/postalCodeData.xml +166 -0
  715. data/vendor/cldr/common/supplemental/supplementalData.xml +5611 -0
  716. data/vendor/cldr/common/supplemental/supplementalMetadata.xml +744 -0
  717. data/vendor/cldr/common/supplemental/telephoneCodeData.xml +846 -0
  718. data/vendor/cldr/common/transforms/Amharic-Latin-BGN.xml +580 -0
  719. data/vendor/cldr/common/transforms/Any-Accents.xml +277 -0
  720. data/vendor/cldr/common/transforms/Any-Publishing.xml +29 -0
  721. data/vendor/cldr/common/transforms/Arabic-Latin-BGN.xml +234 -0
  722. data/vendor/cldr/common/transforms/Arabic-Latin.xml +138 -0
  723. data/vendor/cldr/common/transforms/Armenian-Latin-BGN.xml +285 -0
  724. data/vendor/cldr/common/transforms/Azerbaijani-Latin-BGN.xml +212 -0
  725. data/vendor/cldr/common/transforms/Belarusian-Latin-BGN.xml +285 -0
  726. data/vendor/cldr/common/transforms/Bengali-Devanagari.xml +14 -0
  727. data/vendor/cldr/common/transforms/Bengali-Gujarati.xml +14 -0
  728. data/vendor/cldr/common/transforms/Bengali-Gurmukhi.xml +14 -0
  729. data/vendor/cldr/common/transforms/Bengali-InterIndic.xml +106 -0
  730. data/vendor/cldr/common/transforms/Bengali-Kannada.xml +14 -0
  731. data/vendor/cldr/common/transforms/Bengali-Latin.xml +14 -0
  732. data/vendor/cldr/common/transforms/Bengali-Malayalam.xml +14 -0
  733. data/vendor/cldr/common/transforms/Bengali-Oriya.xml +14 -0
  734. data/vendor/cldr/common/transforms/Bengali-Tamil.xml +14 -0
  735. data/vendor/cldr/common/transforms/Bengali-Telugu.xml +14 -0
  736. data/vendor/cldr/common/transforms/Bulgarian-Latin-BGN.xml +271 -0
  737. data/vendor/cldr/common/transforms/CanadianAboriginal-Latin.xml +191 -0
  738. data/vendor/cldr/common/transforms/Cyrillic-Latin.xml +277 -0
  739. data/vendor/cldr/common/transforms/Devanagari-Bengali.xml +14 -0
  740. data/vendor/cldr/common/transforms/Devanagari-Gujarati.xml +14 -0
  741. data/vendor/cldr/common/transforms/Devanagari-Gurmukhi.xml +14 -0
  742. data/vendor/cldr/common/transforms/Devanagari-InterIndic.xml +119 -0
  743. data/vendor/cldr/common/transforms/Devanagari-Kannada.xml +14 -0
  744. data/vendor/cldr/common/transforms/Devanagari-Latin.xml +14 -0
  745. data/vendor/cldr/common/transforms/Devanagari-Malayalam.xml +14 -0
  746. data/vendor/cldr/common/transforms/Devanagari-Oriya.xml +14 -0
  747. data/vendor/cldr/common/transforms/Devanagari-Tamil.xml +14 -0
  748. data/vendor/cldr/common/transforms/Devanagari-Telugu.xml +14 -0
  749. data/vendor/cldr/common/transforms/Fullwidth-Halfwidth.xml +268 -0
  750. data/vendor/cldr/common/transforms/Georgian-Latin-BGN.xml +96 -0
  751. data/vendor/cldr/common/transforms/Georgian-Latin.xml +60 -0
  752. data/vendor/cldr/common/transforms/Greek-Latin-BGN.xml +481 -0
  753. data/vendor/cldr/common/transforms/Greek-Latin.xml +257 -0
  754. data/vendor/cldr/common/transforms/Greek_Latin_UNGEGN.xml +186 -0
  755. data/vendor/cldr/common/transforms/Gujarati-Bengali.xml +14 -0
  756. data/vendor/cldr/common/transforms/Gujarati-Devanagari.xml +14 -0
  757. data/vendor/cldr/common/transforms/Gujarati-Gurmukhi.xml +14 -0
  758. data/vendor/cldr/common/transforms/Gujarati-InterIndic.xml +95 -0
  759. data/vendor/cldr/common/transforms/Gujarati-Kannada.xml +14 -0
  760. data/vendor/cldr/common/transforms/Gujarati-Latin.xml +14 -0
  761. data/vendor/cldr/common/transforms/Gujarati-Malayalam.xml +14 -0
  762. data/vendor/cldr/common/transforms/Gujarati-Oriya.xml +14 -0
  763. data/vendor/cldr/common/transforms/Gujarati-Tamil.xml +14 -0
  764. data/vendor/cldr/common/transforms/Gujarati-Telugu.xml +14 -0
  765. data/vendor/cldr/common/transforms/Gurmukhi-Bengali.xml +14 -0
  766. data/vendor/cldr/common/transforms/Gurmukhi-Devanagari.xml +14 -0
  767. data/vendor/cldr/common/transforms/Gurmukhi-Gujarati.xml +14 -0
  768. data/vendor/cldr/common/transforms/Gurmukhi-InterIndic.xml +95 -0
  769. data/vendor/cldr/common/transforms/Gurmukhi-Kannada.xml +14 -0
  770. data/vendor/cldr/common/transforms/Gurmukhi-Latin.xml +14 -0
  771. data/vendor/cldr/common/transforms/Gurmukhi-Malayalam.xml +14 -0
  772. data/vendor/cldr/common/transforms/Gurmukhi-Oriya.xml +14 -0
  773. data/vendor/cldr/common/transforms/Gurmukhi-Tamil.xml +14 -0
  774. data/vendor/cldr/common/transforms/Gurmukhi-Telugu.xml +14 -0
  775. data/vendor/cldr/common/transforms/Han-Latin.xml +1439 -0
  776. data/vendor/cldr/common/transforms/Han-Spacedhan.xml +21 -0
  777. data/vendor/cldr/common/transforms/Hangul-Latin.xml +13 -0
  778. data/vendor/cldr/common/transforms/Hebrew-Latin-BGN.xml +132 -0
  779. data/vendor/cldr/common/transforms/Hebrew-Latin.xml +95 -0
  780. data/vendor/cldr/common/transforms/Hiragana-Katakana.xml +186 -0
  781. data/vendor/cldr/common/transforms/Hiragana-Latin.xml +16 -0
  782. data/vendor/cldr/common/transforms/InterIndic-Bengali.xml +142 -0
  783. data/vendor/cldr/common/transforms/InterIndic-Devanagari.xml +159 -0
  784. data/vendor/cldr/common/transforms/InterIndic-Gujarati.xml +143 -0
  785. data/vendor/cldr/common/transforms/InterIndic-Gurmukhi.xml +149 -0
  786. data/vendor/cldr/common/transforms/InterIndic-Kannada.xml +144 -0
  787. data/vendor/cldr/common/transforms/InterIndic-Latin.xml +497 -0
  788. data/vendor/cldr/common/transforms/InterIndic-Malayalam.xml +144 -0
  789. data/vendor/cldr/common/transforms/InterIndic-Oriya.xml +142 -0
  790. data/vendor/cldr/common/transforms/InterIndic-Tamil.xml +153 -0
  791. data/vendor/cldr/common/transforms/InterIndic-Telugu.xml +143 -0
  792. data/vendor/cldr/common/transforms/Jamo-Latin.xml +13 -0
  793. data/vendor/cldr/common/transforms/Kannada-Bengali.xml +14 -0
  794. data/vendor/cldr/common/transforms/Kannada-Devanagari.xml +14 -0
  795. data/vendor/cldr/common/transforms/Kannada-Gujarati.xml +14 -0
  796. data/vendor/cldr/common/transforms/Kannada-Gurmukhi.xml +14 -0
  797. data/vendor/cldr/common/transforms/Kannada-InterIndic.xml +94 -0
  798. data/vendor/cldr/common/transforms/Kannada-Latin.xml +14 -0
  799. data/vendor/cldr/common/transforms/Kannada-Malayalam.xml +14 -0
  800. data/vendor/cldr/common/transforms/Kannada-Oriya.xml +14 -0
  801. data/vendor/cldr/common/transforms/Kannada-Tamil.xml +14 -0
  802. data/vendor/cldr/common/transforms/Kannada-Telugu.xml +14 -0
  803. data/vendor/cldr/common/transforms/Katakana-Latin-BGN.xml +443 -0
  804. data/vendor/cldr/common/transforms/Kazakh-Latin-BGN.xml +366 -0
  805. data/vendor/cldr/common/transforms/Kirghiz-Latin-BGN.xml +235 -0
  806. data/vendor/cldr/common/transforms/Korean-Latin-BGN.xml +382 -0
  807. data/vendor/cldr/common/transforms/Latin-Armenian.xml +91 -0
  808. data/vendor/cldr/common/transforms/Latin-Bengali.xml +15 -0
  809. data/vendor/cldr/common/transforms/Latin-ConjoiningJamo.xml +522 -0
  810. data/vendor/cldr/common/transforms/Latin-Devanagari.xml +15 -0
  811. data/vendor/cldr/common/transforms/Latin-Ethiopic.xml +358 -0
  812. data/vendor/cldr/common/transforms/Latin-Gujarati.xml +15 -0
  813. data/vendor/cldr/common/transforms/Latin-Gurmukhi.xml +15 -0
  814. data/vendor/cldr/common/transforms/Latin-Hangul.xml +14 -0
  815. data/vendor/cldr/common/transforms/Latin-InterIndic.xml +384 -0
  816. data/vendor/cldr/common/transforms/Latin-Jamo.xml +13 -0
  817. data/vendor/cldr/common/transforms/Latin-Kannada.xml +15 -0
  818. data/vendor/cldr/common/transforms/Latin-Katakana.xml +389 -0
  819. data/vendor/cldr/common/transforms/Latin-Malayalam.xml +15 -0
  820. data/vendor/cldr/common/transforms/Latin-NumericPinyin.xml +36 -0
  821. data/vendor/cldr/common/transforms/Latin-Oriya.xml +15 -0
  822. data/vendor/cldr/common/transforms/Latin-Tamil.xml +15 -0
  823. data/vendor/cldr/common/transforms/Latin-Telugu.xml +15 -0
  824. data/vendor/cldr/common/transforms/Latin-Thai.xml +14 -0
  825. data/vendor/cldr/common/transforms/Macedonian-Latin-BGN.xml +198 -0
  826. data/vendor/cldr/common/transforms/Malayalam-Bengali.xml +14 -0
  827. data/vendor/cldr/common/transforms/Malayalam-Devanagari.xml +14 -0
  828. data/vendor/cldr/common/transforms/Malayalam-Gujarati.xml +14 -0
  829. data/vendor/cldr/common/transforms/Malayalam-Gurmukhi.xml +14 -0
  830. data/vendor/cldr/common/transforms/Malayalam-InterIndic.xml +88 -0
  831. data/vendor/cldr/common/transforms/Malayalam-Kannada.xml +14 -0
  832. data/vendor/cldr/common/transforms/Malayalam-Latin.xml +14 -0
  833. data/vendor/cldr/common/transforms/Malayalam-Oriya.xml +14 -0
  834. data/vendor/cldr/common/transforms/Malayalam-Tamil.xml +14 -0
  835. data/vendor/cldr/common/transforms/Malayalam-Telugu.xml +14 -0
  836. data/vendor/cldr/common/transforms/Maldivian-Latin-BGN.xml +141 -0
  837. data/vendor/cldr/common/transforms/Mongolian-Latin-BGN.xml +209 -0
  838. data/vendor/cldr/common/transforms/Oriya-Bengali.xml +14 -0
  839. data/vendor/cldr/common/transforms/Oriya-Devanagari.xml +14 -0
  840. data/vendor/cldr/common/transforms/Oriya-Gujarati.xml +14 -0
  841. data/vendor/cldr/common/transforms/Oriya-Gurmukhi.xml +14 -0
  842. data/vendor/cldr/common/transforms/Oriya-InterIndic.xml +98 -0
  843. data/vendor/cldr/common/transforms/Oriya-Kannada.xml +14 -0
  844. data/vendor/cldr/common/transforms/Oriya-Latin.xml +14 -0
  845. data/vendor/cldr/common/transforms/Oriya-Malayalam.xml +14 -0
  846. data/vendor/cldr/common/transforms/Oriya-Tamil.xml +14 -0
  847. data/vendor/cldr/common/transforms/Oriya-Telugu.xml +14 -0
  848. data/vendor/cldr/common/transforms/Pashto-Latin-BGN.xml +262 -0
  849. data/vendor/cldr/common/transforms/Persian-Latin-BGN.xml +233 -0
  850. data/vendor/cldr/common/transforms/Pinyin-NumericPinyin.xml +15 -0
  851. data/vendor/cldr/common/transforms/Russian-Latin-BGN.xml +347 -0
  852. data/vendor/cldr/common/transforms/Serbian-Latin-BGN.xml +136 -0
  853. data/vendor/cldr/common/transforms/Simplified-Traditional.xml +3576 -0
  854. data/vendor/cldr/common/transforms/Syriac-Latin.xml +59 -0
  855. data/vendor/cldr/common/transforms/Tamil-Bengali.xml +14 -0
  856. data/vendor/cldr/common/transforms/Tamil-Devanagari.xml +14 -0
  857. data/vendor/cldr/common/transforms/Tamil-Gujarati.xml +14 -0
  858. data/vendor/cldr/common/transforms/Tamil-Gurmukhi.xml +14 -0
  859. data/vendor/cldr/common/transforms/Tamil-InterIndic.xml +77 -0
  860. data/vendor/cldr/common/transforms/Tamil-Kannada.xml +14 -0
  861. data/vendor/cldr/common/transforms/Tamil-Latin.xml +14 -0
  862. data/vendor/cldr/common/transforms/Tamil-Malayalam.xml +14 -0
  863. data/vendor/cldr/common/transforms/Tamil-Oriya.xml +14 -0
  864. data/vendor/cldr/common/transforms/Tamil-Telugu.xml +14 -0
  865. data/vendor/cldr/common/transforms/Telugu-Bengali.xml +14 -0
  866. data/vendor/cldr/common/transforms/Telugu-Devanagari.xml +14 -0
  867. data/vendor/cldr/common/transforms/Telugu-Gujarati.xml +14 -0
  868. data/vendor/cldr/common/transforms/Telugu-Gurmukhi.xml +14 -0
  869. data/vendor/cldr/common/transforms/Telugu-InterIndic.xml +94 -0
  870. data/vendor/cldr/common/transforms/Telugu-Kannada.xml +14 -0
  871. data/vendor/cldr/common/transforms/Telugu-Latin.xml +14 -0
  872. data/vendor/cldr/common/transforms/Telugu-Malayalam.xml +14 -0
  873. data/vendor/cldr/common/transforms/Telugu-Oriya.xml +14 -0
  874. data/vendor/cldr/common/transforms/Telugu-Tamil.xml +14 -0
  875. data/vendor/cldr/common/transforms/Thaana-Latin.xml +440 -0
  876. data/vendor/cldr/common/transforms/Thai-Latin.xml +16 -0
  877. data/vendor/cldr/common/transforms/Thai-ThaiLogical.xml +23 -0
  878. data/vendor/cldr/common/transforms/Thai-ThaiSemi.xml +13 -0
  879. data/vendor/cldr/common/transforms/ThaiLogical-Latin.xml +153 -0
  880. data/vendor/cldr/common/transforms/Turkmen-Latin-BGN.xml +334 -0
  881. data/vendor/cldr/common/transforms/Ukrainian-Latin-BGN.xml +316 -0
  882. data/vendor/cldr/common/transforms/Uzbek-Latin-BGN.xml +290 -0
  883. metadata +906 -88
  884. data/test/cases/backend/cascade_test.rb +0 -66
  885. data/test/cases/backend/fallbacks_test.rb +0 -57
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
4
- require File.expand_path(File.dirname(__FILE__) + '/simple_test')
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
4
+ require 'backend/simple_test'
5
5
 
6
6
  class I18nBackendFastTest < I18nBackendSimpleTest
7
7
  class FastBackend
@@ -26,10 +26,10 @@ class I18nBackendFastSpecificTest < Test::Unit::TestCase
26
26
  end
27
27
 
28
28
  def assert_flattens(expected, nested)
29
- assert_equal expected, @backend.send(:flatten_hash, nested)
29
+ assert_equal expected, @backend.send(:wind_keys, nested, nil, true)
30
30
  end
31
31
 
32
- def test_hash_flattening_works
32
+ test "hash flattening works" do
33
33
  assert_flattens(
34
34
  {:a=>'a', :b=>{:c=>'c', :d=>'d', :f=>{:x=>'x'}}, :"b.f" => {:x=>"x"}, :"b.c"=>"c", :"b.f.x"=>"x", :"b.d"=>"d"},
35
35
  {:a=>'a', :b=>{:c=>'c', :d=>'d', :f=>{:x=>'x'}}}
@@ -37,13 +37,13 @@ class I18nBackendFastSpecificTest < Test::Unit::TestCase
37
37
  assert_flattens({:a=>{:b =>['a', 'b']}, :"a.b"=>['a', 'b']}, {:a=>{:b =>['a', 'b']}})
38
38
  end
39
39
 
40
- def test_pluralization_logic_and_lookup_works
40
+ test "pluralization logic and lookup works" do
41
41
  counts_hash = {:zero => 'zero', :one => 'one', :other => 'other'}
42
42
  @backend.store_translations :en, {:a => counts_hash}
43
43
  assert_equal 'one', @backend.translate(:en, :a, :count => 1)
44
44
  end
45
45
 
46
- def test_translation_subtree_retrieval
46
+ test "translation subtree retrieval" do
47
47
  @backend.store_translations :en, :a => {:foo => 'bar'}
48
48
  assert_equal({:foo => 'bar'}, @backend.translate(:en, :a))
49
49
  end
@@ -1,24 +1,25 @@
1
1
  # encoding: utf-8
2
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
3
4
 
4
5
  class I18nBackendHelpersTest < Test::Unit::TestCase
5
6
  def setup
6
7
  @backend = I18n::Backend::Simple.new
7
8
  end
8
9
 
9
- def test_wind_keys
10
- hash = { "a" => { "b" => { "c" => "d", "e" => "f" }, "g" => "h" }, "i" => "j"}
11
- expected = { :"a.b.c" => "d", :"a.b.e" => "f", :"a.g" => "h", :"i" => "j" }
10
+ test "wind_keys" do
11
+ hash = { "a" => { "b" => { "c" => "d", "e" => "f" }, "g" => "h" }, "i.a" => "j"}
12
+ expected = { "a.b.c" => "d", "a.b.e" => "f", "a.g" => "h", "i.a" => "j" }
12
13
  assert_equal expected, @backend.wind_keys(hash)
13
14
  end
14
15
 
15
- def test_unwind_keys
16
+ test "unwind_keys" do
16
17
  hash = { "a.b.c" => "d", :"a.b.e" => "f", :"a.g" => "h", "i" => "j" }
17
18
  expected = { "a" => { "b" => { "c" => "d", "e" => "f" }, "g" => "h" }, "i" => "j"}
18
19
  assert_equal expected, @backend.unwind_keys(hash)
19
20
  end
20
21
 
21
- def test_deep_symbolize_keys
22
+ test "deep_symbolize_keys" do
22
23
  result = @backend.deep_symbolize_keys('foo' => { 'bar' => { 'baz' => 'bar' } })
23
24
  expected = {:foo => {:bar => {:baz => 'bar'}}}
24
25
  assert_equal expected, result
@@ -1,6 +1,7 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
4
+ require 'api'
4
5
 
5
6
  class InterpolationCompilerTest < Test::Unit::TestCase
6
7
  Compiler = I18n::Backend::InterpolationCompiler::Compiler
@@ -1,7 +1,6 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
4
- require 'i18n/backend/metadata'
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
5
4
 
6
5
  class I18nBackendMetadataTest < Test::Unit::TestCase
7
6
  class Backend
@@ -14,43 +13,43 @@ class I18nBackendMetadataTest < Test::Unit::TestCase
14
13
  store_translations(:en, :foo => 'Hi {{name}}')
15
14
  end
16
15
 
17
- define_method "test: translation strings carry metadata" do
16
+ test "translation strings carry metadata" do
18
17
  translation = I18n.t(:foo)
19
18
  assert translation.respond_to?(:translation_metadata)
20
19
  assert translation.translation_metadata.is_a?(Hash)
21
20
  end
22
21
 
23
- define_method "test: translate preserves metadata stored on original Strings" do
22
+ test "translate preserves metadata stored on original Strings" do
24
23
  store_metadata(:foo, :bar, 'bar')
25
24
  assert_equal 'bar', I18n.t(:foo).translation_metadata[:bar]
26
25
  end
27
26
 
28
- define_method "test: translate preserves metadata stored on original Strings (when interpolated)" do
27
+ test "translate preserves metadata stored on original Strings (when interpolated)" do
29
28
  store_metadata(:foo, :bar, 'bar')
30
29
  assert_equal 'bar', I18n.t(:foo, :name => 'David').translation_metadata[:bar]
31
30
  end
32
31
 
33
- define_method "test: translate adds the locale to metadata on Strings" do
32
+ test "translate adds the locale to metadata on Strings" do
34
33
  assert_equal :en, I18n.t(:foo, :locale => :en).translation_metadata[:locale]
35
34
  end
36
35
 
37
- define_method "test: translate adds the key to metadata on Strings" do
36
+ test "translate adds the key to metadata on Strings" do
38
37
  assert_equal :foo, I18n.t(:foo).translation_metadata[:key]
39
38
  end
40
39
 
41
- define_method "test: translate adds the default to metadata on Strings" do
40
+ test "translate adds the default to metadata on Strings" do
42
41
  assert_equal 'bar', I18n.t(:foo, :default => 'bar', :name => '').translation_metadata[:default]
43
42
  end
44
43
 
45
- define_method "test: translation adds the interpolation values to metadata on Strings" do
44
+ test "translation adds the interpolation values to metadata on Strings" do
46
45
  assert_equal({:name => 'David'}, I18n.t(:foo, :name => 'David').translation_metadata[:values])
47
46
  end
48
47
 
49
- define_method "test: interpolation adds the original string to metadata on Strings" do
48
+ test "interpolation adds the original string to metadata on Strings" do
50
49
  assert_equal('Hi {{name}}', I18n.t(:foo, :name => 'David').translation_metadata[:original])
51
50
  end
52
51
 
53
- define_method "test: pluralizatoin adds the count to metadata on Strings" do
52
+ test "pluralizatoin adds the count to metadata on Strings" do
54
53
  assert_equal(1, I18n.t(:missing, :count => 1, :default => { :one => 'foo' }).translation_metadata[:count])
55
54
  end
56
55
 
@@ -1,43 +1,47 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
4
- require 'i18n/backend/pluralization'
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
5
4
 
6
5
  class I18nBackendPluralizationTest < Test::Unit::TestCase
7
6
  class Backend
8
7
  include I18n::Backend::Base
9
8
  include I18n::Backend::Pluralization
9
+ include I18n::Backend::Fallbacks
10
10
  end
11
11
 
12
12
  def setup
13
13
  I18n.backend = Backend.new
14
14
  @rule = lambda { |n| n == 1 ? :one : n == 0 || (2..10).include?(n % 100) ? :few : (11..19).include?(n % 100) ? :many : :other }
15
- store_translations(:foo, :i18n => { :plural => { :rule => @rule } })
15
+ store_translations(:xx, :i18n => { :plural => { :rule => @rule } })
16
16
  @entry = { :zero => 'zero', :one => 'one', :few => 'few', :many => 'many', :other => 'other' }
17
17
  end
18
18
 
19
- define_method "test: pluralization picks a pluralizer from :'i18n.pluralize'" do
20
- assert_equal @rule, I18n.backend.send(:pluralizer, :foo)
19
+ test "pluralization picks a pluralizer from :'i18n.pluralize'" do
20
+ assert_equal @rule, I18n.backend.send(:pluralizer, :xx)
21
21
  end
22
22
 
23
- define_method "test: pluralization picks :one for 1" do
24
- assert_equal 'one', I18n.t(:count => 1, :default => @entry, :locale => :foo)
23
+ test "pluralization picks :one for 1" do
24
+ assert_equal 'one', I18n.t(:count => 1, :default => @entry, :locale => :xx)
25
25
  end
26
26
 
27
- define_method "test: pluralization picks :few for 2" do
28
- assert_equal 'few', I18n.t(:count => 2, :default => @entry, :locale => :foo)
27
+ test "pluralization picks :few for 2" do
28
+ assert_equal 'few', I18n.t(:count => 2, :default => @entry, :locale => :xx)
29
29
  end
30
30
 
31
- define_method "test: pluralization picks :many for 11" do
32
- assert_equal 'many', I18n.t(:count => 11, :default => @entry, :locale => :foo)
31
+ test "pluralization picks :many for 11" do
32
+ assert_equal 'many', I18n.t(:count => 11, :default => @entry, :locale => :xx)
33
33
  end
34
34
 
35
- define_method "test: pluralization picks zero for 0 if the key is contained in the data" do
36
- assert_equal 'zero', I18n.t(:count => 0, :default => @entry, :locale => :foo)
35
+ test "pluralization picks zero for 0 if the key is contained in the data" do
36
+ assert_equal 'zero', I18n.t(:count => 0, :default => @entry, :locale => :xx)
37
37
  end
38
38
 
39
- define_method "test: pluralization picks few for 0 if the key is not contained in the data" do
39
+ test "pluralization picks few for 0 if the key is not contained in the data" do
40
40
  @entry.delete(:zero)
41
- assert_equal 'few', I18n.t(:count => 0, :default => @entry, :locale => :foo)
41
+ assert_equal 'few', I18n.t(:count => 0, :default => @entry, :locale => :xx)
42
+ end
43
+
44
+ test "Fallbacks can pick up rules from fallback locales, too" do
45
+ assert_equal @rule, I18n.backend.send(:pluralizer, :'xx-XX')
42
46
  end
43
47
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
4
4
 
5
5
  class I18nBackendSimpleTest < Test::Unit::TestCase
6
6
  def setup
@@ -9,31 +9,31 @@ class I18nBackendSimpleTest < Test::Unit::TestCase
9
9
  end
10
10
 
11
11
  # useful because this way we can use the backend with no key for interpolation/pluralization
12
- define_method "test simple backend lookup: given nil as a key it returns nil" do
12
+ test "simple backend lookup: given nil as a key it returns nil" do
13
13
  assert_nil I18n.backend.send(:lookup, :en, nil)
14
14
  end
15
15
 
16
16
  # loading translations
17
17
 
18
- define_method "test simple load_translations: given an unknown file type it raises I18n::UnknownFileType" do
19
- assert_raises(I18n::UnknownFileType) { I18n.backend.load_translations("#{locales_dir}/en.xml") }
18
+ test "simple load_translations: given an unknown file type it raises I18n::UnknownFileType" do
19
+ assert_raise(I18n::UnknownFileType) { I18n.backend.load_translations("#{locales_dir}/en.xml") }
20
20
  end
21
21
 
22
- define_method "test simple load_translations: given a Ruby file name it does not raise anything" do
22
+ test "simple load_translations: given a Ruby file name it does not raise anything" do
23
23
  assert_nothing_raised { I18n.backend.load_translations("#{locales_dir}/en.rb") }
24
24
  end
25
25
 
26
- define_method "test simple load_rb: loads data from a Ruby file" do
26
+ test "simple load_rb: loads data from a Ruby file" do
27
27
  data = I18n.backend.send(:load_rb, "#{locales_dir}/en.rb")
28
28
  assert_equal({ :en => { :fuh => { :bah => 'bas' } } }, data)
29
29
  end
30
30
 
31
- define_method "test simple load_yml: loads data from a YAML file" do
31
+ test "simple load_yml: loads data from a YAML file" do
32
32
  data = I18n.backend.send(:load_yml, "#{locales_dir}/en.yml")
33
33
  assert_equal({ 'en' => { 'foo' => { 'bar' => 'baz' } } }, data)
34
34
  end
35
35
 
36
- define_method "test simple load_translations: loads data from known file formats" do
36
+ test "simple load_translations: loads data from known file formats" do
37
37
  I18n.backend = I18n::Backend::Simple.new
38
38
  I18n.backend.load_translations("#{locales_dir}/en.rb", "#{locales_dir}/en.yml")
39
39
  expected = { :en => { :fuh => { :bah => "bas" }, :foo => { :bar => "baz" } } }
@@ -42,35 +42,35 @@ class I18nBackendSimpleTest < Test::Unit::TestCase
42
42
 
43
43
  # storing translations
44
44
 
45
- define_method "test simple store_translations: stores translations, ... no, really :-)" do
45
+ test "simple store_translations: stores translations, ... no, really :-)" do
46
46
  I18n.backend.store_translations :'en', :foo => 'bar'
47
47
  assert_equal Hash[:'en', {:foo => 'bar'}], translations
48
48
  end
49
49
 
50
- define_method "test simple store_translations: deep_merges with existing translations" do
50
+ test "simple store_translations: deep_merges with existing translations" do
51
51
  I18n.backend.store_translations :'en', :foo => {:bar => 'bar'}
52
52
  I18n.backend.store_translations :'en', :foo => {:baz => 'baz'}
53
53
  assert_equal Hash[:'en', {:foo => {:bar => 'bar', :baz => 'baz'}}], translations
54
54
  end
55
55
 
56
- define_method "test simple store_translations: converts the given locale to a Symbol" do
56
+ test "simple store_translations: converts the given locale to a Symbol" do
57
57
  I18n.backend.store_translations 'en', :foo => 'bar'
58
58
  assert_equal Hash[:'en', {:foo => 'bar'}], translations
59
59
  end
60
60
 
61
- define_method "test simple store_translations: converts keys to Symbols" do
61
+ test "simple store_translations: converts keys to Symbols" do
62
62
  I18n.backend.store_translations 'en', 'foo' => {'bar' => 'bar', 'baz' => 'baz'}
63
63
  assert_equal Hash[:'en', {:foo => {:bar => 'bar', :baz => 'baz'}}], translations
64
64
  end
65
65
 
66
66
  # reloading translations
67
67
 
68
- define_method "test simple reload_translations: unloads translations" do
68
+ test "simple reload_translations: unloads translations" do
69
69
  I18n.backend.reload!
70
70
  assert_nil translations
71
71
  end
72
72
 
73
- define_method "test simple reload_translations: uninitializes the backend" do
73
+ test "simple reload_translations: uninitializes the backend" do
74
74
  I18n.backend.reload!
75
75
  assert_equal I18n.backend.initialized?, false
76
76
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../../test_helper')
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../../')); $:.uniq!
3
+ require 'test_helper'
4
4
 
5
5
  # thanks to Masao's String extensions these should work the same in
6
6
  # Ruby 1.8 (patched) and Ruby 1.9 (native)
@@ -8,36 +8,36 @@ require File.expand_path(File.dirname(__FILE__) + '/../../../test_helper')
8
8
  # http://github.com/mutoh/gettext/blob/edbbe1fa8238fa12c7f26f2418403015f0270e47/test/test_string.rb
9
9
 
10
10
  class I18nCoreExtStringInterpolationTest < Test::Unit::TestCase
11
- define_method "test: String interpolates a single argument" do
11
+ test "String interpolates a single argument" do
12
12
  assert_equal "Masao", "%s" % "Masao"
13
13
  end
14
14
 
15
- define_method "test: String interpolates an array argument" do
15
+ test "String interpolates an array argument" do
16
16
  assert_equal "1 message", "%d %s" % [1, 'message']
17
17
  end
18
18
 
19
- define_method "test: String interpolates a hash argument w/ named placeholders" do
19
+ test "String interpolates a hash argument w/ named placeholders" do
20
20
  assert_equal "Masao Mutoh", "%{first} %{last}" % { :first => 'Masao', :last => 'Mutoh' }
21
21
  end
22
22
 
23
- define_method "test: String interpolates a hash argument w/ named placeholders (reverse order)" do
23
+ test "String interpolates a hash argument w/ named placeholders (reverse order)" do
24
24
  assert_equal "Mutoh, Masao", "%{last}, %{first}" % { :first => 'Masao', :last => 'Mutoh' }
25
25
  end
26
26
 
27
- define_method "test: String interpolates named placeholders with sprintf syntax" do
27
+ test "String interpolates named placeholders with sprintf syntax" do
28
28
  assert_equal "10, 43.4", "%<integer>d, %<float>.1f" % {:integer => 10, :float => 43.4}
29
29
  end
30
30
 
31
- define_method "test: String interpolates named placeholders with sprintf syntax, does not recurse" do
31
+ test "String interpolates named placeholders with sprintf syntax, does not recurse" do
32
32
  assert_equal "%<not_translated>s", "%{msg}" % { :msg => '%<not_translated>s', :not_translated => 'should not happen' }
33
33
  end
34
34
 
35
- define_method "test: String interpolation does not replace anything when no placeholders are given" do
35
+ test "String interpolation does not replace anything when no placeholders are given" do
36
36
  assert_equal("aaa", "aaa" % {:num => 1})
37
37
  assert_equal("bbb", "bbb" % [1])
38
38
  end
39
39
 
40
- define_method "test: String interpolation sprintf behaviour equals Ruby 1.9 behaviour" do
40
+ test "String interpolation sprintf behaviour equals Ruby 1.9 behaviour" do
41
41
  assert_equal("1", "%<num>d" % {:num => 1})
42
42
  assert_equal("0b1", "%<num>#b" % {:num => 1})
43
43
  assert_equal("foo", "%<msg>s" % {:msg => "foo"})
@@ -49,46 +49,51 @@ class I18nCoreExtStringInterpolationTest < Test::Unit::TestCase
49
49
  assert_raise(ArgumentError) { "%<num>/d" % {:num => 100} }
50
50
  end
51
51
 
52
- define_method "test: String interpolation old-style sprintf still works" do
52
+ test "String interpolation old-style sprintf still works" do
53
53
  assert_equal("foo 1.000000", "%s %f" % ["foo", 1.0])
54
54
  end
55
55
 
56
- define_method "test: String interpolation raises an ArgumentError when the string has extra placeholders (Array)" do
57
- assert_raises(ArgumentError) do # Ruby 1.9 msg: "too few arguments"
56
+ test "String interpolation raises an ArgumentError when the string has extra placeholders (Array)" do
57
+ assert_raise(ArgumentError) do # Ruby 1.9 msg: "too few arguments"
58
58
  "%s %s" % %w(Masao)
59
59
  end
60
60
  end
61
61
 
62
- define_method "test: String interpolation raises a KeyError when the string has extra placeholders (Hash)" do
63
- assert_raises(KeyError) do # Ruby 1.9 msg: "key not found"
62
+ test "String interpolation raises a KeyError when the string has extra placeholders (Hash)" do
63
+ assert_raise(KeyError) do # Ruby 1.9 msg: "key not found"
64
64
  "%{first} %{last}" % { :first => 'Masao' }
65
65
  end
66
66
  end
67
67
 
68
- define_method "test: String interpolation does not raise when passed extra values (Array)" do
68
+ test "String interpolation does not raise when passed extra values (Array)" do
69
69
  assert_nothing_raised do
70
70
  assert_equal "Masao", "%s" % %w(Masao Mutoh)
71
71
  end
72
72
  end
73
73
 
74
- define_method "test: String interpolation does not raise when passed extra values (Hash)" do
74
+ test "String interpolation does not raise when passed extra values (Hash)" do
75
75
  assert_nothing_raised do
76
76
  assert_equal "Masao Mutoh", "%{first} %{last}" % { :first => 'Masao', :last => 'Mutoh', :salutation => 'Mr.' }
77
77
  end
78
78
  end
79
79
 
80
- define_method "test: % acts as escape character in String interpolation" do
80
+ test "% acts as escape character in String interpolation" do
81
81
  assert_equal "%{first}", "%%{first}" % { :first => 'Masao' }
82
82
  assert_equal("% 1", "%% %<num>d" % {:num => 1.0})
83
83
  assert_equal("%{num} %<num>d", "%%{num} %%<num>d" % {:num => 1})
84
84
  end
85
85
 
86
+ test "% can be used in Ruby's own sprintf behavior" do
87
+ assert_equal "70%", "%d%%" % 70
88
+ assert_equal "70-100%", "%d-%d%%" % [70, 100]
89
+ end
90
+
86
91
  def test_sprintf_mix_unformatted_and_formatted_named_placeholders
87
92
  assert_equal("foo 1.000000", "%{name} %<num>f" % {:name => "foo", :num => 1.0})
88
93
  end
89
-
94
+
90
95
  def test_string_interpolation_raises_an_argument_error_when_mixing_named_and_unnamed_placeholders
91
- assert_raises(ArgumentError) { "%{name} %f" % [1.0] }
92
- assert_raises(ArgumentError) { "%{name} %f" % [1.0, 2.0] }
96
+ assert_raise(ArgumentError) { "%{name} %f" % [1.0] }
97
+ assert_raise(ArgumentError) { "%{name} %f" % [1.0, 2.0] }
93
98
  end
94
99
  end
@@ -1,7 +1,6 @@
1
1
  # encoding: utf-8
2
-
3
- require File.expand_path(File.dirname(__FILE__) + '/../../test_helper')
4
- require 'i18n/backend/gettext'
2
+ $:.unshift(File.expand_path(File.dirname(__FILE__) + '/../')); $:.uniq!
3
+ require 'test_helper'
5
4
  require 'i18n/helpers/gettext'
6
5
 
7
6
  include I18n::Helpers::Gettext
@@ -14,8 +13,9 @@ class I18nGettextApiTest < Test::Unit::TestCase
14
13
  'Sentence 1. Sentence 2.' => 'Satz 1. Satz 2.',
15
14
  "An apple" => { :one => 'Ein Apfel', :other => '{{count}} Äpfel' },
16
15
  :special => { "A special apple" => { :one => 'Ein spezieller Apfel', :other => '{{count}} spezielle Äpfel' } },
17
- :foo => { :bar => 'bar-de' }
18
- }
16
+ :foo => { :bar => 'bar-de' },
17
+ 'foo.bar' => 'Foo Bar'
18
+ }, :separator => '|'
19
19
  end
20
20
 
21
21
  # gettext
@@ -52,6 +52,12 @@ class I18nGettextApiTest < Test::Unit::TestCase
52
52
  assert_equal 'bar-de', s_('foo|bar')
53
53
  end
54
54
 
55
+ def test_sgettext_ignores_dots
56
+ I18n.locale = :de
57
+ assert_equal 'Foo Bar', sgettext('foo.bar')
58
+ assert_equal 'Foo Bar', s_('foo.bar')
59
+ end
60
+
55
61
  # pgettext
56
62
  def test_pgettext_defaults_to_msgid
57
63
  assert_equal 'bar', pgettext('foo', 'bar')