node/deps/v8/test/inspector/debugger/command-line-api-with-bound-function.js
Michaël Zasso 2739185b79 deps: update V8 to 5.5.372.40
PR-URL: https://github.com/nodejs/node/pull/9618
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-01-26 22:46:17 +01:00

65 lines
1.6 KiB
JavaScript

// 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.
print("Check that debug and monitor methods from Command Line API works with bound function.");
InspectorTest.addScript(`
function foo() {}
function boo() {}
var bar = boo.bind(null);
function testFunction() {
console.log("> debug foo and bar");
debug(foo);
debug(bar);
console.log("> call foo and bar");
foo();
bar();
console.log("> undebug foo and bar");
undebug(foo);
undebug(bar);
console.log("> call foo and bar");
foo();
bar();
console.log("> monitor foo and bar");
monitor(foo);
monitor(bar);
console.log("> call foo and bar");
foo();
bar();
console.log("> unmonitor foo and bar");
unmonitor(foo);
unmonitor(bar);
console.log("> call foo and bar");
foo();
bar();
console.log("> monitor and debug bar");
monitor(bar);
debug(bar);
console.log("> call bar");
bar();
console.log("> undebug bar");
undebug(bar);
console.log("> call bar");
bar();
console.log("> debug and unmonitor bar");
debug(bar);
unmonitor(bar);
console.log("> call bar");
bar();
}`);
Protocol.Runtime.enable();
Protocol.Debugger.enable();
Protocol.Debugger.onPaused(message => {
var functionName = message.params.callFrames[0].functionName;
InspectorTest.log(`paused in ${functionName}`);
Protocol.Debugger.resume();
});
Protocol.Runtime.onConsoleAPICalled(message => InspectorTest.log(message.params.args[0].value));
Protocol.Runtime.evaluate({ expression: "testFunction()", includeCommandLineAPI: true })
.then(InspectorTest.completeTest);