1
0
Fork 0
firefox/devtools/server/tests/xpcshell/test_threadlifetime-04.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

60 lines
1.3 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
/* eslint-disable no-shadow, max-nested-callbacks */
"use strict";
/**
* Check that requesting a thread-lifetime actor twice for the same
* value returns the same actor.
*/
var gDebuggee;
var gClient;
var gThreadFront;
add_task(
threadFrontTest(
async ({ threadFront, debuggee, client }) => {
gThreadFront = threadFront;
gClient = client;
gDebuggee = debuggee;
test_thread_lifetime();
},
{ waitForFinish: true }
)
);
function test_thread_lifetime() {
gThreadFront.once("paused", async function (packet) {
const pauseGrip = packet.frame.arguments[0];
const response = await gClient.request({
to: pauseGrip.actor,
type: "threadGrip",
});
const threadGrip1 = response.from;
const response2 = await gClient.request({
to: pauseGrip.actor,
type: "threadGrip",
});
Assert.equal(threadGrip1, response2.from);
await gThreadFront.resume();
threadFrontTestFinished();
});
gDebuggee.eval(
"(" +
function () {
// These arguments are tested.
// eslint-disable-next-line no-unused-vars
function stopMe(arg1) {
debugger;
}
stopMe({ obj: true });
} +
")()"
);
}