mirror of
https://github.com/Feodor2/Mypal68.git
synced 2025-06-18 14:55:44 -04:00
49 lines
1.5 KiB
JavaScript
49 lines
1.5 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
"use strict";
|
|
|
|
const { BrowserTestUtils } = ChromeUtils.import(
|
|
"resource://testing-common/BrowserTestUtils.jsm"
|
|
);
|
|
|
|
// This test tends to trigger a race in the fullscreen time telemetry,
|
|
// where the fullscreen enter and fullscreen exit events (which use the
|
|
// same histogram ID) overlap. That causes TelemetryStopwatch to log an
|
|
// error.
|
|
SimpleTest.ignoreAllUncaughtExceptions(true);
|
|
|
|
add_task(async function test_identityPopupCausesFSExit() {
|
|
let url = "https://example.com/";
|
|
|
|
await BrowserTestUtils.withNewTab("about:blank", async browser => {
|
|
let loaded = BrowserTestUtils.browserLoaded(browser, false, url);
|
|
BrowserTestUtils.loadURI(browser, url);
|
|
await loaded;
|
|
|
|
let identityBox = document.getElementById("identity-box");
|
|
let identityPopup = document.getElementById("identity-popup");
|
|
|
|
info("Entering DOM fullscreen");
|
|
await changeFullscreen(browser, true);
|
|
|
|
let popupShown = BrowserTestUtils.waitForEvent(
|
|
identityPopup,
|
|
"popupshown",
|
|
true
|
|
);
|
|
let fsExit = waitForFullScreenState(browser, false);
|
|
|
|
identityBox.click();
|
|
|
|
info("Waiting for fullscreen exit and identity popup to show");
|
|
await Promise.all([fsExit, popupShown]);
|
|
|
|
ok(
|
|
identityPopup.hasAttribute("panelopen"),
|
|
"Identity popup should be open"
|
|
);
|
|
ok(!window.fullScreen, "Should not be in full-screen");
|
|
});
|
|
});
|