Dijit TextBox Globalization Test for Currency

Before start this test, make sure the dojo/cldr/nls contains the data for "zh-cn", "fr-fr", and "ja-jp" and currencies CNY, EGP, EUR, JPY. If not, convert these CLDR data and put them there.

Currency Format

Test DescriptionTestExpectedResultComment
Locale: zh_CN Currency: CNY¥123,456,789.46 Compare (Escaped)
Locale: zh_CN Currency: CNY
Locale: fr_FR Currency: EUR
Locale: zh_CN Currency: EUR
Locale: ja_JP Currency: JPY
Locale: ja_JP Currency: JPY

Currency Validate

Test DescriptionTestInputParsed ValueExpectedResultComment
Locale: zh_CN Currency: CNYCorrect
Locale: zh_CN Currency: CNYCorrect
Locale: fr_FR Currency: EURCorrect
Locale: zh_CN Currency: EURCorrect
Locale: ja_JP Currency: JPYCorrect
Locale: ja_JP Currency: JPYCorrect

Issues & Comments

Issue #1Fixed

Some browsers like FireFox have a bug on the non-breaking space character (U+00A0,   or   or   in HTML). They always convert the NBSP character to a normal space (U+0020,   in HTML) automatically in the following circumstances:

You cannot read a real NBSP character from an INPUT element on these browsers. It causes issues when some formatting data in CLDR contains an NBSP character. For example,

So Dojo may generate formatted data with NBSP characters in it but cannot read NBSP charaters from user's input in some browser.

Issue #2Fixed: the CLDR data generator should be fixed by adding code to convert U+200F to "\u200F" in nls JS files.

Most Bidi currency symbols contain an LTR-MARK (U+200F) character at the very beginning. But Firefox ignores it when it is not in any escaping form. This should be a bug of Firefox. For example, click alert('‏'.indexOf('\u+200F')) (there is a U+200F in the empty-looking string):

But if the U+200F is in some escaping form, Firefox will work as well as other browsers. Click alert('\u200F'.indexOf('\u+200F')) to see the same result both in Firefox and IE:

Issue #3Fixed: added a "localeDigit" to the options

Strictly speaking, the data conversion must support non-European number characters in some locales like Arabic and Hindi. For example, ICU formats a number data into Indic number characters by default in the Arabic locale. However, currently Dojo does not support this feature (Dojo uses the default number conversion of the browser).

12 tests to run in 1 groups
------------------------------------------------------------
GROUP "t" has 12 tests to run