v8/test/inspector/debugger/get-possible-breakpoints-expected.txt
Benedikt Meurer a90f1748d2 [inspector] De-flake inspector/debugger/get-possible-breakpoints.js.
Since the inspector does not longer hold on strongly to Script objects
after they were collected by V8, this test was relying on the GC to not
collect the scripts too eagerly in case where nothing else holds on to
the script. So explicitly adding a global object property assignment
here in those cases to ensure that the Script is kept alive.

Fixed: chromium:1314212, v8:12699
Bug: chromium:1246884, chromium:1295659
Change-Id: Ia16fcf841aeb29bf131fc6fa066f120d342f94b2
Doc: https://bit.ly/v8-inspector-script-caching
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576117
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/main@{#79852}
2022-04-07 12:13:34 +00:00

289 lines
8.2 KiB
Plaintext

Test for Debugger.getPossibleBreakpoints
Running test: getPossibleBreakpointsInRange
Test start.scriptId != end.scriptId.
{
error : {
code : -32000
message : Locations should contain the same scriptId
}
id : <messageId>
}
Test not existing scriptId.
{
error : {
code : -32000
message : Script not found
}
id : <messageId>
}
Test end < start.
function foo(){ return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test empty range in first line.
function foo(){ return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test one character range in first line.
function foo(){ #return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test empty range in not first line.
function foo(){ return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test one character range in not first line.
function foo(){ return Promise.resolve(); }
function boo(){ #return Promise.resolve().then(() => 42); }
Test end is undefined
function foo(){ #return Promise.#resolve();# }
function boo(){ #return Promise.#resolve().#then(() => #42#);# }
#
Test end.lineNumber > scripts.lineCount()
function foo(){ #return Promise.#resolve();# }
function boo(){ #return Promise.#resolve().#then(() => #42#);# }
Test one string
function foo(){ #return Promise.#resolve();# }
function boo(){ return Promise.resolve().then(() => 42); }
Test end.columnNumber > end.line.length(), should be the same as previous.
function foo(){ #return Promise.#resolve();# }
function boo(){ return Promise.resolve().then(() => 42); }
Running test: getPossibleBreakpointsInArrow
function foo() { #return Promise.#resolve().#then(() => #239#).#then(() => #42#).#then(() => #() => #42#)# }#
Running test: arrowFunctionFirstLine
function foo1() { #Promise.#resolve().#then(() => #42#) #}
function foo2() { Promise.resolve().then(() => 42) }
paused in foo1
function foo1() { ^Promise.resolve().then(() => 42) }
function foo2() { Promise.resolve().then(() => 42) }
paused in foo1
function foo1() { Promise.^resolve().then(() => 42) }
function foo2() { Promise.resolve().then(() => 42) }
paused in foo1
function foo1() { Promise.resolve().^then(() => 42) }
function foo2() { Promise.resolve().then(() => 42) }
paused in foo1
function foo1() { Promise.resolve().then(() => 42) ^}
function foo2() { Promise.resolve().then(() => 42) }
paused in
function foo1() { Promise.resolve().then(() => ^42) }
function foo2() { Promise.resolve().then(() => 42) }
paused in
function foo1() { Promise.resolve().then(() => 42^) }
function foo2() { Promise.resolve().then(() => 42) }
Running test: arrowFunctionOnPause
#debugger; function foo3() { #Promise.#resolve().#then(() => #42#) #}
function foo4() { #Promise.#resolve().#then(() => #42#) #};
#foo3();
#foo4();#
paused in
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) };
^foo3();
foo4();
paused in foo3
debugger; function foo3() { ^Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in foo3
debugger; function foo3() { Promise.^resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in foo3
debugger; function foo3() { Promise.resolve().^then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in foo3
debugger; function foo3() { Promise.resolve().then(() => 42) ^}
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
^foo4();
paused in foo4
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { ^Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in foo4
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.^resolve().then(() => 42) };
foo3();
foo4();
paused in foo4
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().^then(() => 42) };
foo3();
foo4();
paused in foo4
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) ^};
foo3();
foo4();
paused in
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();^
paused in
debugger; function foo3() { Promise.resolve().then(() => ^42) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in
debugger; function foo3() { Promise.resolve().then(() => 42^) }
function foo4() { Promise.resolve().then(() => 42) };
foo3();
foo4();
paused in
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => ^42) };
foo3();
foo4();
paused in
debugger; function foo3() { Promise.resolve().then(() => 42) }
function foo4() { Promise.resolve().then(() => 42^) };
foo3();
foo4();
Running test: getPossibleBreakpointsInRangeWithOffset
Test empty range in first line.
function foo(){ return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test one character range in first line.
function foo(){ #return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test empty range in not first line.
function foo(){ return Promise.resolve(); }
function boo(){ return Promise.resolve().then(() => 42); }
Test one character range in not first line.
function foo(){ return Promise.resolve(); }
function boo(){ #return Promise.resolve().then(() => 42); }
Test end is undefined
function foo(){ #return Promise.#resolve();# }
function boo(){ #return Promise.#resolve().#then(() => #42#);# }
#
Test end.lineNumber > scripts.lineCount()
function foo(){ #return Promise.#resolve();# }
function boo(){ #return Promise.#resolve().#then(() => #42#);# }
Test one string
function foo(){ #return Promise.#resolve();# }
function boo(){ return Promise.resolve().then(() => 42); }
Test end.columnNumber > end.line.length(), should be the same as previous.
function foo(){ #return Promise.#resolve();# }
function boo(){ return Promise.resolve().then(() => 42); }
Running test: withOffset
function foo5() { #Promise.#resolve().#then(() => #42#) #}
function foo6() { #Promise.#resolve().#then(() => #42#) #}
#
paused in foo5
function foo5() { ^Promise.resolve().then(() => 42) }
function foo6() { Promise.resolve().then(() => 42) }
paused in foo5
function foo5() { Promise.^resolve().then(() => 42) }
function foo6() { Promise.resolve().then(() => 42) }
paused in foo5
function foo5() { Promise.resolve().^then(() => 42) }
function foo6() { Promise.resolve().then(() => 42) }
paused in foo5
function foo5() { Promise.resolve().then(() => 42) ^}
function foo6() { Promise.resolve().then(() => 42) }
paused in foo6
function foo5() { Promise.resolve().then(() => 42) }
function foo6() { ^Promise.resolve().then(() => 42) }
paused in foo6
function foo5() { Promise.resolve().then(() => 42) }
function foo6() { Promise.^resolve().then(() => 42) }
paused in foo6
function foo5() { Promise.resolve().then(() => 42) }
function foo6() { Promise.resolve().^then(() => 42) }
paused in foo6
function foo5() { Promise.resolve().then(() => 42) }
function foo6() { Promise.resolve().then(() => 42) ^}
paused in
function foo5() { Promise.resolve().then(() => ^42) }
function foo6() { Promise.resolve().then(() => 42) }
paused in
function foo5() { Promise.resolve().then(() => 42^) }
function foo6() { Promise.resolve().then(() => 42) }
paused in
function foo5() { Promise.resolve().then(() => 42) }
function foo6() { Promise.resolve().then(() => ^42) }
paused in
function foo5() { Promise.resolve().then(() => 42) }
function foo6() { Promise.resolve().then(() => 42^) }
Running test: arrowFunctionReturn
#() => #239#
#
function foo() { function boo() { return 239 } #}
#
function foo() { function boo() { #return 239# }; #boo #}
#
function foo() { let boo = #function() { #return 239# }; #}
#
var foo = #() => { #239 #}
#
function foo() { #239 #}
#
var foo = #() => #239#
var foo = #() => { #return 239# }#
Running test: argumentsAsCalls
function foo(){#}
function boo(){#}
function main(f1,f2){#}
#main(#foo(), #boo());
#