intl/uconv/tests/unit/test_bug365345.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/intl/uconv/tests/unit/test_bug365345.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,52 @@
     1.4 +/* Tests conversion of unrepresented characters that should be transliterated
     1.5 + * to spaces (bug 365345), and some others from transliterate.properties while
     1.6 + * I'm here
     1.7 + */
     1.8 +
     1.9 +const inSpace = "Hello Space";
    1.10 +const inEnSpace = "Hello\u2002EnSpace";
    1.11 +const inEmSpace = "Hello\u2003EmSpace";
    1.12 +const inEuro = "Hello\u20ACEuro";
    1.13 +const inTamil1000 = "Hello\u0BF2Tamil1000";
    1.14 +const inMonospace9 = "Hello\ud835\udfffMonospace9";
    1.15 +    
    1.16 +const expectedSpace = "Hello Space";
    1.17 +const expectedEnSpace = "Hello EnSpace";
    1.18 +const expectedEmSpace = "Hello EmSpace";
    1.19 +const expectedEuro = "HelloEUREuro";
    1.20 +const expectedTamil1000 = "Hello[1000]Tamil1000";
    1.21 +const expectedMonospace9 = "Hello9Monospace9";
    1.22 +
    1.23 +const EntityAfterCharsetConv = 512;
    1.24 +const transliterate = 8;
    1.25 +
    1.26 +const charset = "ISO-8859-1";
    1.27 +    
    1.28 +function run_test() {
    1.29 +    var SaveAsCharset =
    1.30 +	Components.Constructor("@mozilla.org/intl/saveascharset;1",
    1.31 +			       "nsISaveAsCharset",
    1.32 +			       "Init");
    1.33 +
    1.34 +    var converter = new SaveAsCharset(charset,
    1.35 +				      EntityAfterCharsetConv, 
    1.36 +				      transliterate);
    1.37 +
    1.38 +    var outSpace = converter.Convert(inSpace);
    1.39 +    do_check_eq(outSpace, expectedSpace);
    1.40 +
    1.41 +    var outEnSpace = converter.Convert(inEnSpace);
    1.42 +    do_check_eq(outEnSpace, expectedEnSpace);
    1.43 +
    1.44 +    var outEmSpace = converter.Convert(inEmSpace);
    1.45 +    do_check_eq(outEmSpace, expectedEmSpace);
    1.46 +
    1.47 +    var outEuro = converter.Convert(inEuro);
    1.48 +    do_check_eq(outEuro, expectedEuro);
    1.49 +
    1.50 +    var outTamil1000 = converter.Convert(inTamil1000);
    1.51 +    do_check_eq(outTamil1000, expectedTamil1000);
    1.52 +
    1.53 +    var outMonospace9 = converter.Convert(inMonospace9);
    1.54 +    do_check_eq(outMonospace9, expectedMonospace9);
    1.55 +}

mercurial