summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/eval-introduction-principals.js
blob: 25eb1bea824e659220bce558b6bea45df3fdaf4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Ensure the introduction info for eval scripts respects principal checks.

function myAPI(f) { return f(); }

var contentGlobal = newGlobal({principal: 0x1});
contentGlobal.chrome = this;
contentGlobal.eval("\n" +
		   "function contentTest() { chrome.myAPI(eval.bind(undefined, 'chrome.stack = Error().stack;')) };\n" +
		   "contentTest();");

// Note that the stack below does not include the current filename or file
// line numbers, and there's no trace of the myAPI call between the two
// evals.
assertEq(stack, "@eval line 2 > eval:1:16\n" +
                "contentTest@eval:2:33\n" +
                "@eval:3:1\n");