Bug 1820498 - Convert PerTestCoverageUtils to an ES module. r=marco,webdriver-reviewers,perftest-reviewers,sparky,whimboo

Differential Revision: https://phabricator.services.mozilla.com/D171689
This commit is contained in:
Mark Banner
2023-03-06 19:13:58 +00:00
parent 470cb965ad
commit 68fdfb9bdd
12 changed files with 22 additions and 26 deletions

View File

@@ -365,7 +365,9 @@ if (!isDevtools) {
}
if (AppConstants.MOZ_CODE_COVERAGE) {
whitelist.add("chrome://remote/content/marionette/PerTestCoverageUtils.jsm");
whitelist.add(
"chrome://remote/content/marionette/PerTestCoverageUtils.sys.mjs"
);
}
const gInterestingCategories = new Set([

View File

@@ -129,8 +129,8 @@ this.reftest = class extends ExtensionAPI {
// Close pre-existing window
win.close();
const { PerTestCoverageUtils } = ChromeUtils.import(
"resource://reftest/PerTestCoverageUtils.jsm"
const { PerTestCoverageUtils } = ChromeUtils.importESModule(
"resource://reftest/PerTestCoverageUtils.sys.mjs"
);
if (PerTestCoverageUtils.enabled) {
// In PerTestCoverage mode, wait for the process belonging to the window we just closed

View File

@@ -54,7 +54,7 @@ reftest.jar:
res/AsyncSpellCheckTestHelper.jsm (../../../editor/AsyncSpellCheckTestHelper.jsm)
res/httpd.jsm (../../../netwerk/test/httpserver/httpd.js)
res/StructuredLog.sys.mjs (../../../testing/modules/StructuredLog.sys.mjs)
res/PerTestCoverageUtils.jsm (../../../tools/code-coverage/PerTestCoverageUtils.jsm)
res/PerTestCoverageUtils.sys.mjs (../../../tools/code-coverage/PerTestCoverageUtils.sys.mjs)
res/input.css (../../../editor/reftests/xul/input.css)
res/progress.css (../../../layout/reftests/forms/progress/style.css)
res/manifest.jsm (manifest.jsm)

View File

@@ -51,8 +51,8 @@ const { ReadTopManifest, CreateUrls } = ChromeUtils.import(
const { StructuredLogger } = ChromeUtils.importESModule(
"resource://reftest/StructuredLog.sys.mjs"
);
const { PerTestCoverageUtils } = ChromeUtils.import(
"resource://reftest/PerTestCoverageUtils.jsm"
const { PerTestCoverageUtils } = ChromeUtils.importESModule(
"resource://reftest/PerTestCoverageUtils.sys.mjs"
);
const { XPCOMUtils } = ChromeUtils.importESModule(
"resource://gre/modules/XPCOMUtils.sys.mjs"

View File

@@ -48,6 +48,6 @@ remote.jar:
content/marionette/test.xhtml (chrome/test.xhtml)
content/marionette/test2.xhtml (chrome/test2.xhtml)
#ifdef MOZ_CODE_COVERAGE
content/marionette/PerTestCoverageUtils.jsm (../../tools/code-coverage/PerTestCoverageUtils.jsm)
content/marionette/PerTestCoverageUtils.sys.mjs (../../tools/code-coverage/PerTestCoverageUtils.sys.mjs)
#endif
#endif

View File

@@ -220,8 +220,8 @@ function Tester(aTests, structuredLogger, aCallback) {
this.Assert = ChromeUtils.importESModule(
"resource://testing-common/Assert.sys.mjs"
).Assert;
this.PerTestCoverageUtils = ChromeUtils.import(
"resource://testing-common/PerTestCoverageUtils.jsm"
this.PerTestCoverageUtils = ChromeUtils.importESModule(
"resource://testing-common/PerTestCoverageUtils.sys.mjs"
).PerTestCoverageUtils;
this.PromiseTestUtils.init();

View File

@@ -15,6 +15,8 @@ ChromeUtils.defineESModuleGetters(lazy, {
MockColorPicker: "resource://specialpowers/MockColorPicker.sys.mjs",
MockFilePicker: "resource://specialpowers/MockFilePicker.sys.mjs",
MockPermissionPrompt: "resource://specialpowers/MockPermissionPrompt.sys.mjs",
PerTestCoverageUtils:
"resource://testing-common/PerTestCoverageUtils.sys.mjs",
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.sys.mjs",
SpecialPowersSandbox: "resource://specialpowers/SpecialPowersSandbox.sys.mjs",
WrapPrivileged: "resource://specialpowers/WrapPrivileged.sys.mjs",
@@ -26,12 +28,6 @@ ChromeUtils.defineModuleGetter(
);
import { AppConstants } from "resource://gre/modules/AppConstants.sys.mjs";
ChromeUtils.defineModuleGetter(
lazy,
"PerTestCoverageUtils",
"resource://testing-common/PerTestCoverageUtils.jsm"
);
Cu.crashIfNotInAutomation();
function bindDOMWindowUtils(aWindow) {

View File

@@ -9,13 +9,14 @@ const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
HiddenFrame: "resource://gre/modules/HiddenFrame.sys.mjs",
PerTestCoverageUtils:
"resource://testing-common/PerTestCoverageUtils.sys.mjs",
SpecialPowersSandbox: "resource://specialpowers/SpecialPowersSandbox.sys.mjs",
});
XPCOMUtils.defineLazyModuleGetters(lazy, {
ExtensionData: "resource://gre/modules/Extension.jsm",
ExtensionTestCommon: "resource://testing-common/ExtensionTestCommon.jsm",
PerTestCoverageUtils: "resource://testing-common/PerTestCoverageUtils.jsm",
ServiceWorkerCleanUp: "resource://gre/modules/ServiceWorkerCleanUp.jsm",
});

View File

@@ -10,6 +10,8 @@ const { ComponentUtils } = ChromeUtils.import(
ChromeUtils.defineESModuleGetters(this, {
AboutHomeStartupCache: "resource:///modules/BrowserGlue.sys.mjs",
PerTestCoverageUtils:
"resource://testing-common/PerTestCoverageUtils.sys.mjs",
SessionStore: "resource:///modules/sessionstore/SessionStore.sys.mjs",
setTimeout: "resource://gre/modules/Timer.sys.mjs",
});
@@ -17,7 +19,6 @@ ChromeUtils.defineESModuleGetters(this, {
XPCOMUtils.defineLazyModuleGetters(this, {
AboutNewTab: "resource:///modules/AboutNewTab.jsm",
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
PerTestCoverageUtils: "resource://testing-common/PerTestCoverageUtils.jsm",
});
XPCOMUtils.defineLazyServiceGetter(

View File

@@ -562,8 +562,8 @@ function _execute_test() {
this[func] = Assert[func].bind(Assert);
}
const { PerTestCoverageUtils } = ChromeUtils.import(
"resource://testing-common/PerTestCoverageUtils.jsm"
const { PerTestCoverageUtils } = ChromeUtils.importESModule(
"resource://testing-common/PerTestCoverageUtils.sys.mjs"
);
if (runningInParent) {

View File

@@ -4,10 +4,6 @@
/* exported PerTestCoverageUtils */
"use strict";
var EXPORTED_SYMBOLS = ["PerTestCoverageUtils"];
// This is the directory where gcov is emitting the gcda files.
const gcovPrefixPath = Services.env.get("GCOV_PREFIX");
// This is the directory where codecoverage.py is expecting to see the gcda files.
@@ -52,7 +48,7 @@ function awaitPromise(promise) {
complete = true;
});
Services.tm.spinEventLoopUntil(
"PerTestCoverageUtils.jsm:awaitPromise",
"PerTestCoverageUtils.sys.mjs:awaitPromise",
() => complete
);
if (error) {
@@ -75,7 +71,7 @@ function moveDirectoryContents(src, dst) {
}
}
var PerTestCoverageUtils = class PerTestCoverageUtilsClass {
export var PerTestCoverageUtils = class PerTestCoverageUtilsClass {
// Resets the counters to 0.
static async beforeTest() {
if (!PerTestCoverageUtils.enabled) {

View File

@@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
TESTING_JS_MODULES += ["PerTestCoverageUtils.jsm"]
TESTING_JS_MODULES += ["PerTestCoverageUtils.sys.mjs"]
if CONFIG["MOZ_CODE_COVERAGE"]:
XPIDL_MODULE = "code-coverage"