mirror of https://github.com/axmolengine/axmol.git
58 lines
2.0 KiB
JavaScript
58 lines
2.0 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
/**
|
|
* Check that relative source map urls work.
|
|
*/
|
|
|
|
var gDebuggee;
|
|
var gClient;
|
|
var gThreadClient;
|
|
|
|
Components.utils.import('resource:///modules/devtools/SourceMap.jsm');
|
|
|
|
// Deep in the complicated labyrinth of code that this test invokes, beneath
|
|
// debugger callbacks, sandboxes and nested event loops, lies an exception.
|
|
// This exception lay sleeping since the dawn of time, held captive in a
|
|
// delicate balance of custom xpcshell error reporters and garbage data about
|
|
// the XPCCallContext stack. But bholley dug too greedily, and too deep, and
|
|
// awoke shadow and flame in the darkness of nsExternalHelperAppService.cpp.
|
|
// We must now trust in deep magic to ensure that it does not awaken again.
|
|
ignoreReportedErrors(true);
|
|
|
|
function run_test()
|
|
{
|
|
initTestDebuggerServer();
|
|
gDebuggee = addTestGlobal("test-source-map");
|
|
gClient = new DebuggerClient(DebuggerServer.connectPipe());
|
|
gClient.connect(function() {
|
|
attachTestTabAndResume(gClient, "test-source-map", function(aResponse, aTabClient, aThreadClient) {
|
|
gThreadClient = aThreadClient;
|
|
test_relative_source_map();
|
|
});
|
|
});
|
|
do_test_pending();
|
|
}
|
|
|
|
function test_relative_source_map()
|
|
{
|
|
gClient.addOneTimeListener("newSource", function _onNewSource(aEvent, aPacket) {
|
|
do_check_eq(aEvent, "newSource");
|
|
do_check_eq(aPacket.type, "newSource");
|
|
do_check_true(!!aPacket.source);
|
|
|
|
do_check_true(aPacket.source.url.indexOf("sourcemapped.coffee") !== -1,
|
|
"The new source should be a coffee file.");
|
|
do_check_eq(aPacket.source.url.indexOf("sourcemapped.js"), -1,
|
|
"The new source should not be a js file.");
|
|
|
|
finishClient(gClient);
|
|
});
|
|
|
|
code = readFile("sourcemapped.js")
|
|
+ "\n//# sourceMappingURL=source-map-data/sourcemapped.map";
|
|
|
|
Components.utils.evalInSandbox(code, gDebuggee, "1.8",
|
|
getFileUrl("sourcemapped.js"), 1);
|
|
}
|