blob: 19023c5bb67292f4fe4f63409e69874a5d5fa5ef (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
/* eslint-disable max-nested-callbacks */
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
/**
* Bug 1552453 - Verify that breakpoints are hit for evaluated
* scripts that contain a source url pragma.
*/
add_task(
threadFrontTest(async ({ threadFront, targetFront }) => {
await threadFront.setBreakpoint(
{ sourceUrl: "http://example.com/code.js", line: 2, column: 1 },
{}
);
info("Create a new script with the displayUrl code.js");
const consoleFront = await targetFront.getFront("console");
let onEvaluationResult = consoleFront.once("evaluationResult");
const onNewSource = waitForEvent(threadFront, "newSource");
consoleFront.evaluateJSAsync(
"function f() {\n return 5; \n}\n//# sourceURL=http://example.com/code.js"
);
await onEvaluationResult;
const sourcePacket = await onNewSource;
equal(sourcePacket.source.url, "http://example.com/code.js");
info("Evaluate f() and pause at line 2");
onEvaluationResult = consoleFront.once("evaluationResult");
consoleFront.evaluateJSAsync("f()");
const pausedPacket = await waitForPause(threadFront);
equal(pausedPacket.why.type, "breakpoint");
equal(pausedPacket.frame.where.line, 2);
resume(threadFront);
await onEvaluationResult;
})
);
|