Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
/* Any copyright is dedicated to the Public Domain.
"use strict";
const HAR_FILENAME = "test_filename.har";
// We expect the HAR file to be created on reload in profD/har/logs
const HAR_PATH = ["har", "logs", HAR_FILENAME];
/**
* Smoke test for automated HAR export.
* Note that the `enableAutoExportToFile` is set from browser-harautomation.ini
* because the preference needs to be set before starting the browser.
*/
add_task(async function () {
// Set a simple test filename for the exported HAR.
await pushPref("devtools.netmonitor.har.defaultFileName", "test_filename");
const tab = await addTab(SIMPLE_URL);
const toolbox = await gDevTools.showToolboxForTab(tab, {
toolId: "inspector",
});
info("Wait until the HAR file is created in the profile directory");
const harFile = new FileUtils.File(
PathUtils.join(PathUtils.profileDir, ...HAR_PATH)
);
ok(!harFile.exists(), "HAR file doesn't exists before reload");
await reloadSelectedTab();
await waitUntil(() => harFile.exists());
ok(harFile.exists(), "HAR file was automatically created");
// Remove the test file so that we can re-run this test without resolving right away.
harFile.remove(false);
await toolbox.destroy();
await removeTab(tab);
});