michael@0: load(libdir + 'array-compare.js'); michael@0: michael@0: var g = newGlobal(); michael@0: var dbg = new Debugger(g); michael@0: var hits = 0; michael@0: dbg.onDebuggerStatement = function (frame) { michael@0: var arr = frame.arguments; michael@0: assertEq(arraysEqual(arr[0].parameterNames, []), true); michael@0: assertEq(arraysEqual(arr[1].parameterNames, ["x"]), true); michael@0: assertEq(arraysEqual(arr[2].parameterNames, michael@0: ["a","b","c","d","e","f","g","h","i","j","k","l","m", michael@0: "n","o","p","q","r","s","t","u","v","w","x","y","z"]), michael@0: true); michael@0: assertEq(arraysEqual(arr[3].parameterNames, ["a", (void 0), (void 0)]), true); michael@0: assertEq(arr[4].parameterNames, (void 0)); michael@0: assertEq(arraysEqual(arr[5].parameterNames, [(void 0), (void 0)]), true); michael@0: assertEq(arr.length, 6); michael@0: hits++; michael@0: }; michael@0: michael@0: g.eval("(" michael@0: + function () { michael@0: (function () { debugger; } michael@0: (function () {}, michael@0: function (x) {}, michael@0: 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) {}, michael@0: function (a, [b, c], {d, e:f}) { }, michael@0: {a:1}, michael@0: Math.atan2 michael@0: )); michael@0: } michael@0: +")()"); michael@0: assertEq(hits, 1);