Bug 1889091 - Part 6: Remove "scratch" register parameter from emitPushArguments...
[gecko.git] / dom / ipc / tests / browser_hide_tooltip.js
blob1b7f7c56b96bcfa884b813c1e9884c3f087fc9bd
1 /* Any copyright is dedicated to the Public Domain.
2    http://creativecommons.org/publicdomain/zero/1.0/ */
4 "use strict";
6 add_task(async function test_hiding_tooltip() {
7   let page1 = "data:text/html,<html title='title'><body>page 1<body></html>";
8   let page2 = "data:text/html,<html><body>page 2</body></html>";
10   let tab = await BrowserTestUtils.openNewForegroundTab({
11     gBrowser,
12     opening: page1,
13   });
15   let popup = new Promise(function (resolve) {
16     window.addEventListener("popupshown", resolve, { once: true });
17   });
18   // Fire a mousemove to trigger the tooltip.
19   EventUtils.synthesizeMouseAtCenter(gBrowser.selectedBrowser, {
20     type: "mousemove",
21   });
22   await popup;
24   let hiding = new Promise(function (resolve) {
25     window.addEventListener("popuphiding", resolve, { once: true });
26   });
27   let loaded = BrowserTestUtils.browserLoaded(
28     gBrowser.selectedBrowser,
29     false,
30     page2
31   );
32   BrowserTestUtils.startLoadingURIString(gBrowser, page2);
33   await loaded;
34   await hiding;
36   ok(true, "Should have hidden the tooltip");
37   BrowserTestUtils.removeTab(tab);
38 });