js/src/jit-test/tests/debug/Object-parameterNames.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/jit-test/tests/debug/Object-parameterNames.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,33 @@
     1.4 +load(libdir + 'array-compare.js');
     1.5 +
     1.6 +var g = newGlobal();
     1.7 +var dbg = new Debugger(g);
     1.8 +var hits = 0;
     1.9 +dbg.onDebuggerStatement = function (frame) {
    1.10 +    var arr = frame.arguments;
    1.11 +    assertEq(arraysEqual(arr[0].parameterNames, []), true);
    1.12 +    assertEq(arraysEqual(arr[1].parameterNames, ["x"]), true);
    1.13 +    assertEq(arraysEqual(arr[2].parameterNames,
    1.14 +                         ["a","b","c","d","e","f","g","h","i","j","k","l","m",
    1.15 +                          "n","o","p","q","r","s","t","u","v","w","x","y","z"]), 
    1.16 +             true);
    1.17 +    assertEq(arraysEqual(arr[3].parameterNames, ["a", (void 0), (void 0)]), true);
    1.18 +    assertEq(arr[4].parameterNames, (void 0));
    1.19 +    assertEq(arraysEqual(arr[5].parameterNames, [(void 0), (void 0)]), true);
    1.20 +    assertEq(arr.length, 6);
    1.21 +    hits++;
    1.22 +};
    1.23 +
    1.24 +g.eval("("
    1.25 +       + function () { 
    1.26 +           (function () { debugger; }
    1.27 +            (function () {},
    1.28 +             function (x) {},
    1.29 +             function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) {},
    1.30 +             function (a, [b, c], {d, e:f}) { },
    1.31 +             {a:1},
    1.32 +             Math.atan2
    1.33 +            ));
    1.34 +       }
    1.35 +       +")()");
    1.36 +assertEq(hits, 1);

mercurial