Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
/* Any copyright is dedicated to the Public Domain.
"use strict";
/**
* Check that the runtime info is correctly displayed for ThisFirefox.
* Also acts as basic sanity check for the default mock of the this-firefox client.
*/
add_task(async function () {
// Setup a mock for our runtime client factory to return the default THIS_FIREFOX client
// when the client for the this-firefox runtime is requested.
const runtimeClientFactoryMock = createRuntimeClientFactoryMock();
const thisFirefoxClient = createThisFirefoxClientMock();
runtimeClientFactoryMock.createClientForRuntime = runtime => {
const {
RUNTIMES,
} = require("resource://devtools/client/aboutdebugging/src/constants.js");
if (runtime.id === RUNTIMES.THIS_FIREFOX) {
return thisFirefoxClient;
}
throw new Error("Unexpected runtime id " + runtime.id);
};
info("Enable mocks");
enableRuntimeClientFactoryMock(runtimeClientFactoryMock);
registerCleanupFunction(() => {
disableRuntimeClientFactoryMock();
});
const { document, tab, window } = await openAboutDebugging();
await selectThisFirefoxPage(document, window.AboutDebugging.store);
info("Check that the 'This Firefox' mock is properly displayed");
const thisFirefoxRuntimeInfo = document.querySelector(".qa-runtime-name");
ok(
thisFirefoxRuntimeInfo,
"Runtime info for this-firefox runtime is displayed"
);
const runtimeInfoText = thisFirefoxRuntimeInfo.textContent;
ok(
runtimeInfoText.includes("Firefox"),
"this-firefox runtime info shows the correct runtime name: " +
runtimeInfoText
);
ok(
runtimeInfoText.includes("63.0"),
"this-firefox runtime info shows the correct version number: " +
runtimeInfoText
);
await removeTab(tab);
});