intl/uconv/tests/unit/test_bug365345.js

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     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  */
     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";
    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";
    20 const EntityAfterCharsetConv = 512;
    21 const transliterate = 8;
    23 const charset = "ISO-8859-1";
    25 function run_test() {
    26     var SaveAsCharset =
    27 	Components.Constructor("@mozilla.org/intl/saveascharset;1",
    28 			       "nsISaveAsCharset",
    29 			       "Init");
    31     var converter = new SaveAsCharset(charset,
    32 				      EntityAfterCharsetConv, 
    33 				      transliterate);
    35     var outSpace = converter.Convert(inSpace);
    36     do_check_eq(outSpace, expectedSpace);
    38     var outEnSpace = converter.Convert(inEnSpace);
    39     do_check_eq(outEnSpace, expectedEnSpace);
    41     var outEmSpace = converter.Convert(inEmSpace);
    42     do_check_eq(outEmSpace, expectedEmSpace);
    44     var outEuro = converter.Convert(inEuro);
    45     do_check_eq(outEuro, expectedEuro);
    47     var outTamil1000 = converter.Convert(inTamil1000);
    48     do_check_eq(outTamil1000, expectedTamil1000);
    50     var outMonospace9 = converter.Convert(inMonospace9);
    51     do_check_eq(outMonospace9, expectedMonospace9);
    52 }

mercurial