/* Tests transliteration of new characters in Unicode 5.1 */ const inTeluguFractions = "\u0C78\u0C79\u0C7A\u0C7B\u0C7C\u0C7D\u0C7E"; const inMalayalamNumbers = "\u0D70\u0D71\u0D72\u0D73\u0D74\u0D75"; /* MYANMAR SHAN DIGIT ONE, SUNDANESE DIGIT TWO, LEPCHA DIGIT THREE, OL CHIKI DIGIT FOUR, VAI DIGIT FIVE, SAURASHTRA DIGIT SIX KAYAH LI DIGIT SEVEN CHAM DIGIT EIGHT */ const inDigits = "\u1091\u1BB2\u1C43\u1C54\uA625\uA8D6\uA907\uAA58"; const inRomanNumerals = "\u2185\u2186\u2187\u2188"; const inSuperSubscripts = "\u2C7C\u2C7D"; const expectedTeluguFractions = "[0][1][2][3][1][2][3]"; const expectedMalayalamNumbers = "[10][100][1000][1/4][1/2][3/4]"; const expectedDigits = "12345678"; const expectedRomanNumerals = "[6][50][50000][100000]"; const expectedSuperSubscripts = "v(j)^(V)"; const EntityAfterCharsetConv = 512; const transliterate = 8; const charset = "ISO-8859-1"; function run_test() { var SaveAsCharset = Components.Constructor("@mozilla.org/intl/saveascharset;1", "nsISaveAsCharset", "Init"); var converter = new SaveAsCharset(charset, EntityAfterCharsetConv, transliterate); var outTeluguFractions = converter.Convert(inTeluguFractions); do_check_eq(outTeluguFractions, expectedTeluguFractions); var outMalayalamNumbers = converter.Convert(inMalayalamNumbers); do_check_eq(outMalayalamNumbers, expectedMalayalamNumbers); var outDigits = converter.Convert(inDigits); do_check_eq(outDigits, expectedDigits); var outRomanNumerals = converter.Convert(inRomanNumerals); do_check_eq(outRomanNumerals, expectedRomanNumerals); var outSuperSubscripts = converter.Convert(inSuperSubscripts); do_check_eq(outSuperSubscripts, expectedSuperSubscripts); }