Frame-eval-16.js (912B)
1 // eval correctly handles optional custom url option 2 var g = newGlobal({newCompartment: true}); 3 var dbg = new Debugger(g); 4 var count = 0; 5 6 function testUrl (options, expected) { 7 count++; 8 dbg.onDebuggerStatement = function (frame) { 9 dbg.onNewScript = function (script) { 10 dbg.onNewScript = undefined; 11 assertEq(script.url, expected); 12 count--; 13 }; 14 frame.eval("", options); 15 }; 16 g.eval("debugger;"); 17 } 18 19 20 testUrl(undefined, "debugger eval code"); 21 testUrl(null, "debugger eval code"); 22 testUrl({ url: undefined }, "debugger eval code"); 23 testUrl({ url: null }, "null"); 24 testUrl({ url: 5 }, "5"); 25 testUrl({ url: "" }, ""); 26 testUrl({ url: "test" }, "test"); 27 testUrl({ url: "Ðëßþ" }, "Ðëßþ"); 28 testUrl({ url: "тест" }, "тест"); 29 testUrl({ url: "テスト" }, "テスト"); 30 testUrl({ url: "\u{1F9EA}" }, "\u{1F9EA}"); 31 assertEq(count, 0);