summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Script-sourceStart-04.js
blob: de03a2f5826e6043d36bc7ea5f265318941d3f88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/*
 * For eval and Function constructors, Script.prototype.sourceStart and
 * Script.prototype.sourceLength should comprise the entire script (excluding
 * arguments in the case of Function constructors)
 */
let g = newGlobal({newCompartment: true});
let dbg = new Debugger(g);

var count = 0;
function test(string, range) {
    dbg.onNewScript = function (script) {
        ++count;
        if (count % 2 == 0) {
            assertEq(script.sourceStart, range[0]);
            assertEq(script.sourceLength, range[1]);
        }
    }

    g.eval(string);
}

test("eval('2 * 3')", [0, 5]);
test("new Function('2 * 3')", [0, 31]);
test("new Function('x', 'x * x')", [0, 32]);
assertEq(count, 6);