blob: 6452e07a268f704ce0c26dc95d00f5f443bc601e [file] [log] [blame]
// Copyright 2016 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
let {session, contextGroup, Protocol} = InspectorTest.start('Tests Runtime.compileScript');
var executionContextId;
Protocol.Debugger.enable().then(onDebuggerEnabled);
function onDebuggerEnabled()
{
Protocol.Runtime.enable();
Protocol.Debugger.onScriptParsed(onScriptParsed);
Protocol.Runtime.onExecutionContextCreated(onExecutionContextCreated);
}
function onScriptParsed(messageObject)
{
if (!messageObject.params.url)
return;
InspectorTest.log("Debugger.scriptParsed: " + messageObject.params.url);
}
function onExecutionContextCreated(messageObject)
{
executionContextId = messageObject.params.context.id;
testCompileScript("\n (", false, "foo1.js")
.then(() => testCompileScript("239", true, "foo2.js"))
.then(() => testCompileScript("239", false, "foo3.js"))
.then(() => testCompileScript("testfunction f()\n{\n return 0;\n}\n", false, "foo4.js"))
.then(() => InspectorTest.completeTest());
}
function testCompileScript(expression, persistScript, sourceURL)
{
InspectorTest.log("Compiling script: " + sourceURL);
InspectorTest.log(" persist: " + persistScript);
return Protocol.Runtime.compileScript({
expression: expression,
sourceURL: sourceURL,
persistScript: persistScript,
executionContextId: executionContextId
}).then(onCompiled);
function onCompiled(messageObject)
{
InspectorTest.log("compilation result: ");
InspectorTest.logMessage(messageObject);
InspectorTest.log("-----");
}
}