diff options
Diffstat (limited to 'WebCore/manual-tests/inspector/bp-in-named-eval-after-reload.html')
-rw-r--r-- | WebCore/manual-tests/inspector/bp-in-named-eval-after-reload.html | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/WebCore/manual-tests/inspector/bp-in-named-eval-after-reload.html b/WebCore/manual-tests/inspector/bp-in-named-eval-after-reload.html new file mode 100644 index 0000000..4612cd6 --- /dev/null +++ b/WebCore/manual-tests/inspector/bp-in-named-eval-after-reload.html @@ -0,0 +1,65 @@ +<style>code{background-color: #ffc;}</style> +<p><b>Test for <a href="https://bugs.webkit.org/show_bug.cgi?id=31375">Bug 31375</a> - Web Inspector: breakpoints in named evals are not restored after a reload</b> + +<ul> +<li><p>open this page with Web Inspector +<li><p>switch to the Scripts panel, enabling debug if required +<li><p>the available scripts in the select element should be: +<ul> +<li>(program): f1.js +<li>(program): f2.js +<li>bp-in-named-eval-after-reload.html +</ul> +<li><p>In <code>(program) f1.js</code>, set a breakpoint on the first +executable line of the function <code>f1()</code>, the invocation of <code>doNothing()</code>. +<li><p>In <code>(program) f2.js</code>, set a breakpoint on the first +executable line of the function <code>f2()</code>, the invocation of <code>doNothing()</code>. +<li><p>click this button: <input id=button type=button value="click me"> +<li><p>debugger should stop in the <code>f1()</code> function. +<li><p>resume the debugger +<li><p>debugger should stop in the <code>f2()</code> function (the function in <code>(program) f2.js</code>) +<li><p>resume the debugger +<li><p>switch to the web page, reload the web page, switch back to web inspector +<li><p>in the breakpoints sidebar panel, click on the two breakpoints listed +and the source for those functions should be shown in the source panel, and +the previous breakpoint markers should be visible +<li><p>click the "click me" button above, again +<li><p>debugger should stop in the <code>f1()</code> function. +<li><p>resume the debugger +<li><p>debugger should stop in the <code>f2()</code> function. +<li><p>resume the debugger +</ul> + +<p>Note that without the fix in <a href="https://bugs.webkit.org/show_bug.cgi?id=31375">Bug 31375</a>, +the breakpoints won't work after reloading the page. + +<script> + +function doNothing() { /* allows multi-line functions, easier to debug */ }; + +eval([ + "function f1() {", + " doNothing();", + " console.log(new Date() + ': f1() called');", + "}", + "//@sourceURL=f1.js" +].join("\n")); + +f2 = Function([ + "", + " doNothing();", + " console.log(new Date() + ': f2() called');", + "//@sourceURL=f2.js" +].join("\n")); + +var button = document.getElementById("button"); + +button.addEventListener("click", clickHandler, false); + +function clickHandler() { + f1(); + f2(); +} + +</script> +<!-- End --> |