diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /dom/base/test/browser_messagemanager_targetframeloader.js | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/base/test/browser_messagemanager_targetframeloader.js')
-rw-r--r-- | dom/base/test/browser_messagemanager_targetframeloader.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/dom/base/test/browser_messagemanager_targetframeloader.js b/dom/base/test/browser_messagemanager_targetframeloader.js new file mode 100644 index 0000000000..62c8482add --- /dev/null +++ b/dom/base/test/browser_messagemanager_targetframeloader.js @@ -0,0 +1,36 @@ +function frameScript() { + sendSyncMessage("Test:Message"); + sendAsyncMessage("Test:Message"); + sendAsyncMessage("Test:Done"); +} + +function test() { + waitForExplicitFinish(); + + var newTab = BrowserTestUtils.addTab(gBrowser, "about:blank"); + gBrowser.selectedTab = newTab; + + let browser = newTab.linkedBrowser; + let frameLoader = browser.frameLoader; + ok(frameLoader !== null, "frameLoader looks okay"); + + browser.messageManager.loadFrameScript( + "data:,(" + frameScript.toString() + ")()", + false + ); + + browser.messageManager.addMessageListener("Test:Message", msg => { + ok(msg.target === browser, "<browser> is correct"); + ok(msg.targetFrameLoader === frameLoader, "frameLoader is correct"); + ok( + browser.frameLoader === msg.targetFrameLoader, + "browser frameloader is correct" + ); + }); + + browser.messageManager.addMessageListener("Test:Done", () => { + info("Finished"); + gBrowser.removeCurrentTab(); + finish(); + }); +} |