|
1 /* Tests conversion of unrepresented characters that should be transliterated |
|
2 * to spaces (bug 365345), and some others from transliterate.properties while |
|
3 * I'm here |
|
4 */ |
|
5 |
|
6 const inSpace = "Hello Space"; |
|
7 const inEnSpace = "Hello\u2002EnSpace"; |
|
8 const inEmSpace = "Hello\u2003EmSpace"; |
|
9 const inEuro = "Hello\u20ACEuro"; |
|
10 const inTamil1000 = "Hello\u0BF2Tamil1000"; |
|
11 const inMonospace9 = "Hello\ud835\udfffMonospace9"; |
|
12 |
|
13 const expectedSpace = "Hello Space"; |
|
14 const expectedEnSpace = "Hello EnSpace"; |
|
15 const expectedEmSpace = "Hello EmSpace"; |
|
16 const expectedEuro = "HelloEUREuro"; |
|
17 const expectedTamil1000 = "Hello[1000]Tamil1000"; |
|
18 const expectedMonospace9 = "Hello9Monospace9"; |
|
19 |
|
20 const EntityAfterCharsetConv = 512; |
|
21 const transliterate = 8; |
|
22 |
|
23 const charset = "ISO-8859-1"; |
|
24 |
|
25 function run_test() { |
|
26 var SaveAsCharset = |
|
27 Components.Constructor("@mozilla.org/intl/saveascharset;1", |
|
28 "nsISaveAsCharset", |
|
29 "Init"); |
|
30 |
|
31 var converter = new SaveAsCharset(charset, |
|
32 EntityAfterCharsetConv, |
|
33 transliterate); |
|
34 |
|
35 var outSpace = converter.Convert(inSpace); |
|
36 do_check_eq(outSpace, expectedSpace); |
|
37 |
|
38 var outEnSpace = converter.Convert(inEnSpace); |
|
39 do_check_eq(outEnSpace, expectedEnSpace); |
|
40 |
|
41 var outEmSpace = converter.Convert(inEmSpace); |
|
42 do_check_eq(outEmSpace, expectedEmSpace); |
|
43 |
|
44 var outEuro = converter.Convert(inEuro); |
|
45 do_check_eq(outEuro, expectedEuro); |
|
46 |
|
47 var outTamil1000 = converter.Convert(inTamil1000); |
|
48 do_check_eq(outTamil1000, expectedTamil1000); |
|
49 |
|
50 var outMonospace9 = converter.Convert(inMonospace9); |
|
51 do_check_eq(outMonospace9, expectedMonospace9); |
|
52 } |