From 2aa4a82499d4becd2284cdb482213d541b8804dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 16:29:10 +0200 Subject: Adding upstream version 86.0.1. Signed-off-by: Daniel Baumann --- .../browser_dbg-remember-expanded-scopes.js | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 devtools/client/debugger/test/mochitest/browser_dbg-remember-expanded-scopes.js (limited to 'devtools/client/debugger/test/mochitest/browser_dbg-remember-expanded-scopes.js') diff --git a/devtools/client/debugger/test/mochitest/browser_dbg-remember-expanded-scopes.js b/devtools/client/debugger/test/mochitest/browser_dbg-remember-expanded-scopes.js new file mode 100644 index 0000000000..4cf0a5a20e --- /dev/null +++ b/devtools/client/debugger/test/mochitest/browser_dbg-remember-expanded-scopes.js @@ -0,0 +1,39 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at . */ + +// Ignore strange errors when shutting down. +PromiseTestUtils.allowMatchingRejectionsGlobally(/No such actor/); +PromiseTestUtils.allowMatchingRejectionsGlobally(/connection just closed/); + +const MAXIMUM_ITEMS = 10; + +// Test that expanded scopes stay expanded after resuming and pausing again. +add_task(async function() { + const dbg = await initDebugger("doc-remember-expanded-scopes.html"); + invokeInTab("main", "doc-remember-expanded-scopes.html"); + await waitForPaused(dbg); + + await toggleNode(dbg, "object"); + await toggleNode(dbg, "innerObject"); + await stepOver(dbg); + await waitForPaused(dbg); + + await waitUntil(() => findNode(dbg, "innerData")); + ok(true, "Inner object data automatically expanded after stepping"); +}); + +function findNode(dbg, text) { + for (let index = 0; index < MAXIMUM_ITEMS; index++) { + const elem = findElement(dbg, "scopeNode", index); + if (elem?.innerText == text) { + return elem; + } + } + return null; +} + +async function toggleNode(dbg, text) { + const node = await waitUntilPredicate(() => findNode(dbg, text)); + return toggleObjectInspectorNode(node); +} \ No newline at end of file -- cgit v1.2.3