Source code

Revision control

Copy as Markdown

Other Tools

function set_text(field, text) {
field.value = text;
field.dispatchEvent(new Event("input"));
}
async function reset_about_page(doc) {
let info_text = doc.getElementById("info-text-div");
let msg = JSON.stringify({ type: "listen-success" });
let promise = BrowserTestUtils.waitForMutationCondition(
info_text,
{ attributes: true, attributeFilter: ["hidden"] },
() => info_text.hidden !== false
);
Services.obs.notifyObservers(null, "about-webauthn-prompt", msg);
await promise;
}
async function send_auth_info_and_check_categories(doc, ops) {
let info_text = doc.getElementById("info-text-div");
let msg = JSON.stringify({
type: "selected-device",
auth_info: { options: ops },
});
let promise = BrowserTestUtils.waitForMutationCondition(
info_text,
{ attributes: true, attributeFilter: ["hidden"] },
() => info_text.hidden
);
Services.obs.notifyObservers(null, "about-webauthn-prompt", msg);
await promise;
// Info should be shown always, so we use it as a canary
let info_tab_button = doc.getElementById("info-tab-button");
isnot(
info_tab_button.style.display,
"none",
"Info button in the sidebar not visible"
);
}