blob: b5d2762eec887261463e0ffcfd5268e97d12c8a4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
// This test ensures that only one command update happens when switching tabs.
"use strict";
add_task(async function () {
const uri = "data:text/html,<body><input>";
let tab1 = await BrowserTestUtils.openNewForegroundTab(gBrowser, uri);
let tab2 = await BrowserTestUtils.openNewForegroundTab(gBrowser, uri);
let updates = [];
function countUpdates(event) {
updates.push(new Error().stack);
}
let updater = document.getElementById("editMenuCommandSetAll");
updater.addEventListener("commandupdate", countUpdates, true);
await BrowserTestUtils.switchTab(gBrowser, tab1);
is(updates.length, 1, "only one command update per tab switch");
if (updates.length > 1) {
for (let stack of updates) {
info("Update stack:\n" + stack);
}
}
updater.removeEventListener("commandupdate", countUpdates, true);
BrowserTestUtils.removeTab(tab1);
BrowserTestUtils.removeTab(tab2);
});
|