js/src/jit-test/tests/basic/testWeirdDateParse.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/jit-test/tests/basic/testWeirdDateParse.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,38 @@
     1.4 +var global = this;
     1.5 +function testWeirdDateParseOuter()
     1.6 +{
     1.7 +    var vDateParts = ["11", "17", "2008"];
     1.8 +    var out = [];
     1.9 +    for (var vI = 0; vI < vDateParts.length; vI++)
    1.10 +        out.push(testWeirdDateParseInner(vDateParts[vI]));
    1.11 +    /* Mutate the global shape so we fall off trace; this causes
    1.12 +     * additional oddity */
    1.13 +    global.x = Math.random();
    1.14 +    return out;
    1.15 +}
    1.16 +function testWeirdDateParseInner(pVal)
    1.17 +{
    1.18 +    var vR = 0;
    1.19 +    for (var vI = 0; vI < pVal.length; vI++) {
    1.20 +        var vC = pVal.charAt(vI);
    1.21 +        if ((vC >= '0') && (vC <= '9'))
    1.22 +            vR = (vR * 10) + parseInt(vC);
    1.23 +    }
    1.24 +    return vR;
    1.25 +}
    1.26 +function testWeirdDateParse() {
    1.27 +    var result = [];
    1.28 +    result.push(testWeirdDateParseInner("11"));
    1.29 +    result.push(testWeirdDateParseInner("17"));
    1.30 +    result.push(testWeirdDateParseInner("2008"));
    1.31 +    result.push(testWeirdDateParseInner("11"));
    1.32 +    result.push(testWeirdDateParseInner("17"));
    1.33 +    result.push(testWeirdDateParseInner("2008"));
    1.34 +    result = result.concat(testWeirdDateParseOuter());
    1.35 +    result = result.concat(testWeirdDateParseOuter());
    1.36 +    result.push(testWeirdDateParseInner("11"));
    1.37 +    result.push(testWeirdDateParseInner("17"));
    1.38 +    result.push(testWeirdDateParseInner("2008"));
    1.39 +    return result.join(",");
    1.40 +}
    1.41 +assertEq(testWeirdDateParse(), "11,17,2008,11,17,2008,11,17,2008,11,17,2008,11,17,2008");

mercurial