Bug 1881702 - Update eslint-plugin-mozilla tests to work with ESLint v9. r=frontend-codestyle-reviewers,mossop
authorMark Banner <standard8@mozilla.com>
Thu, 29 May 2025 08:22:54 +0000 (7 weeks ago)
changeset 789589 5c4751bb84090e9c6a561210420176cc3bd4b4a3
parent 789588 1b43d3819198a2d3152aecec538b5c3f5360fe14
child 789590 7112920935a5b5d38ac575ea29b67ba826dd33b3
push id42830
push useramarc@mozilla.com
push dateThu, 29 May 2025 15:28:14 +0000 (7 weeks ago)
treeherdermozilla-central@3f2fd0c018c9 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
git commita20d7ef42833c42a75fe096bccccda5211bb7ade
reviewersfrontend-codestyle-reviewers, mossop
bugs1881702
milestone141.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1881702 - Update eslint-plugin-mozilla tests to work with ESLint v9. r=frontend-codestyle-reviewers,mossop Differential Revision: https://phabricator.services.mozilla.com/D251250
tools/lint/eslint/eslint-plugin-mozilla/tests/avoid-Date-timing.js
tools/lint/eslint/eslint-plugin-mozilla/tests/avoid-removeChild.js
tools/lint/eslint/eslint-plugin-mozilla/tests/balanced-listeners.js
tools/lint/eslint/eslint-plugin-mozilla/tests/balanced-observers.js
tools/lint/eslint/eslint-plugin-mozilla/tests/lazy-getter-object-name.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-addtask-setup.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-arbitrary-setTimeout.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-browser-refs-in-toolkit.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-compare-against-boolean-literals.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-comparison-or-assignment-inside-ok.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-cu-reportError.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-define-cc-etc.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-more-globals.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-redeclare-with-import-autofix.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-throw-cr-literal.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-parameters.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-removeEventListener.js
tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-run-test.js
tools/lint/eslint/eslint-plugin-mozilla/tests/prefer-boolean-length-check.js
tools/lint/eslint/eslint-plugin-mozilla/tests/prefer-formatValues.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-addtask-only.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-eager-module-in-lazy-getter.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-globalThis-modification.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-import-system-module-from-non-system.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-importGlobalProperties.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-lazy-imports-into-globals.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-mixing-eager-and-lazy.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-multiple-await.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-multiple-getters-calls.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-relative-requires.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-scriptableunicodeconverter.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-some-requires.js
tools/lint/eslint/eslint-plugin-mozilla/tests/reject-top-level-await.js
tools/lint/eslint/eslint-plugin-mozilla/tests/rejects-requires-await.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-cc-etc.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-chromeutils-generateqi.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-console-createInstance.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-default-preference-values.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-includes-instead-of-indexOf.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-isInstance.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-ownerGlobal.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-returnValue.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-services.js
tools/lint/eslint/eslint-plugin-mozilla/tests/use-static-import.js
tools/lint/eslint/eslint-plugin-mozilla/tests/valid-ci-uses.js
tools/lint/eslint/eslint-plugin-mozilla/tests/valid-lazy.js
tools/lint/eslint/eslint-plugin-mozilla/tests/valid-services-property.js
tools/lint/eslint/eslint-plugin-mozilla/tests/valid-services.js
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/avoid-Date-timing.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/avoid-Date-timing.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/avoid-Date-timing");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, type) {
   return { code, errors: [{ messageId: "usePerfNow", type }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/avoid-removeChild.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/avoid-removeChild.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/avoid-removeChild");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, messageId = "useRemove") {
   return { code, errors: [{ messageId, type: "CallExpression" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/balanced-listeners.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/balanced-listeners.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/balanced-listeners");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function error(code, functionName, type) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/balanced-observers.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/balanced-observers.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/balanced-observers");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function error(code, observable) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/lazy-getter-object-name.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/lazy-getter-object-name.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/lazy-getter-object-name");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-addtask-setup.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-addtask-setup.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-addtask-setup");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function callError() {
   return [{ messageId: "useAddSetup", type: "CallExpression" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-arbitrary-setTimeout.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-arbitrary-setTimeout.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-arbitrary-setTimeout");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function wrapCode(code, filename = "xpcshell/test_foo.js") {
   return { code, filename };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-browser-refs-in-toolkit.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-browser-refs-in-toolkit.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-browser-refs-in-toolkit");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, url) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-compare-against-boolean-literals.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-compare-against-boolean-literals.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-compare-against-boolean-literals");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function callError() {
   return [{ messageId: "noCompareBoolean", type: "BinaryExpression" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-comparison-or-assignment-inside-ok.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-comparison-or-assignment-inside-ok.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-comparison-or-assignment-inside-ok");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, output, messageId, data) {
   let rv = {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-cu-reportError.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-cu-reportError.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-cu-reportError");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function callError() {
   return [{ messageId: "useConsoleError", type: "CallExpression" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-define-cc-etc.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-define-cc-etc.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-define-cc-etc");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, varNames) {
   if (!Array.isArray(varNames)) {
     varNames = [varNames];
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-more-globals.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-more-globals.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-more-globals");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 function makeTest(code, errors = []) {
   return {
     code,
     errors,
     filename: __dirname + "/helper-no-more-globals.js",
   };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-redeclare-with-import-autofix.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-redeclare-with-import-autofix.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-redeclare-with-import-autofix");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, output, messageId, options = []) {
   let rv = {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-throw-cr-literal.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-throw-cr-literal.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-throw-cr-literal");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, output, messageId) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-parameters.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-parameters.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-useless-parameters");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function callError(messageId, data = {}) {
   return [{ messageId, data, type: "CallExpression" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-removeEventListener.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-removeEventListener.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-useless-removeEventListener");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return { code, errors: [{ messageId: "useOnce", type: "CallExpression" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-run-test.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/no-useless-run-test.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/no-useless-run-test");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, output) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/prefer-boolean-length-check.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/prefer-boolean-length-check.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/prefer-boolean-length-check");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidError() {
   return [{ messageId: "preferBooleanCheck", type: "BinaryExpression" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/prefer-formatValues.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/prefer-formatValues.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/prefer-formatValues");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function error(line, column = undefined) {
   return {
     messageId: "useSingleCall",
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-addtask-only.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-addtask-only.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-addtask-only");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidError(output, startColumn, endColumn) {
   return [
     {
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-eager-module-in-lazy-getter.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-eager-module-in-lazy-getter.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-eager-module-in-lazy-getter");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, uri) {
   return { code, errors: [{ messageId: "eagerModule", data: { uri } }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-globalThis-modification.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-globalThis-modification.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-globalThis-modification");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCall(code) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-import-system-module-from-non-system.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-import-system-module-from-non-system.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-import-system-module-from-non-system");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 ruleTester.run("reject-import-system-module-from-non-system", rule, {
   valid: [
     {
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-importGlobalProperties.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-importGlobalProperties.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-importGlobalProperties");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 ruleTester.run("reject-importGlobalProperties", rule, {
   valid: [
     {
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-lazy-imports-into-globals.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-lazy-imports-into-globals.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-lazy-imports-into-globals");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return { code, errors: [{ messageId: "rejectLazyImportsIntoGlobals" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-mixing-eager-and-lazy.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-mixing-eager-and-lazy.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-mixing-eager-and-lazy");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, uri) {
   return { code, errors: [{ messageId: "mixedEagerAndLazy", data: { uri } }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-multiple-await.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-multiple-await.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-multiple-await");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return { code, errors: [{ messageId: "rejectMultipleAwait" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-multiple-getters-calls.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-multiple-getters-calls.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-multiple-getters-calls");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return { code, errors: [{ messageId: "rejectMultipleCalls" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-relative-requires.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-relative-requires.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-relative-requires");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidError() {
   return [{ messageId: "rejectRelativeRequires", type: "CallExpression" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-scriptableunicodeconverter.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-scriptableunicodeconverter.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-scriptableunicodeconverter");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidError() {
   return [
     { messageId: "rejectScriptableUnicodeConverter", type: "MemberExpression" },
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-some-requires.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-some-requires.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-some-requires");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function requirePathError(path) {
   return [
     { messageId: "rejectRequire", data: { path }, type: "CallExpression" },
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-top-level-await.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/reject-top-level-await.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/reject-top-level-await");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return { code, errors: [{ messageId: "rejectTopLevelAwait" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/rejects-requires-await.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/rejects-requires-await.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/rejects-requires-await");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return { code, errors: [{ messageId: "rejectRequiresAwait" }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-cc-etc.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-cc-etc.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-cc-etc");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, originalName, newName, output) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-chromeutils-generateqi.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-chromeutils-generateqi.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-chromeutils-generateqi");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function error(messageId, type) {
   return [{ messageId, type }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-console-createInstance.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-console-createInstance.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-console-createInstance");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 ruleTester.run("use-console-createInstance", rule, {
   valid: ['"resource://gre/modules/Foo.sys.mjs"'],
   invalid: [
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-default-preference-values.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-default-preference-values.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-default-preference-values");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-includes-instead-of-indexOf.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-includes-instead-of-indexOf.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-includes-instead-of-indexOf");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-isInstance.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-isInstance.js
@@ -3,54 +3,53 @@
 
 "use strict";
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-isInstance");
+const globals = require("globals");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 const errors = [
   {
     messageId: "preferIsInstance",
     type: "BinaryExpression",
   },
 ];
 
-const env = { browser: true };
-
 /**
  * A test case boilerplate simulating chrome privileged script.
  * @param {string} code
  */
 function mockChromeScript(code) {
   return {
     code,
     filename: "foo.sys.mjs",
-    env,
+    languageOptions: { globals: globals.browser },
   };
 }
 
 /**
  * A test case boilerplate simulating content script.
  * @param {string} code
  */
 function mockContentScript(code) {
   return {
     code,
     filename: "foo.js",
-    env,
+    languageOptions: { globals: globals.browser },
   };
 }
 
 ruleTester.run("use-isInstance", rule, {
   valid: [
     mockChromeScript("(() => {}) instanceof Function;"),
     mockChromeScript("({}) instanceof Object;"),
     mockChromeScript("Node instanceof Object;"),
@@ -70,17 +69,17 @@ ruleTester.run("use-isInstance", rule, {
     mockContentScript(
       "SpecialPowers.ChromeUtils.importESModule(''); file instanceof File;"
     ),
   ],
   invalid: [
     {
       code: "node instanceof Node",
       output: "Node.isInstance(node)",
-      env,
+      languageOptions: { globals: globals.browser },
       errors,
       filename: "foo.sys.mjs",
     },
     {
       code: "text instanceof win.Text",
       output: "win.Text.isInstance(text)",
       errors,
       filename: "foo.sys.mjs",
@@ -89,17 +88,17 @@ ruleTester.run("use-isInstance", rule, {
       code: "target instanceof this.contentWindow.HTMLAudioElement",
       output: "this.contentWindow.HTMLAudioElement.isInstance(target)",
       errors,
       filename: "foo.sys.mjs",
     },
     {
       code: "target instanceof File",
       output: "File.isInstance(target)",
-      env,
+      languageOptions: { globals: globals.browser },
       errors,
       filename: "foo.sys.mjs",
     },
     {
       code: "target instanceof win.File",
       output: "win.File.isInstance(target)",
       errors,
       filename: "foo.sys.mjs",
@@ -108,21 +107,21 @@ ruleTester.run("use-isInstance", rule, {
       code: "window.arguments[0] instanceof window.XULElement",
       output: "window.XULElement.isInstance(window.arguments[0])",
       errors,
       filename: "foo.sys.mjs",
     },
     {
       code: "ChromeUtils.importESModule(''); node instanceof Node",
       output: "ChromeUtils.importESModule(''); Node.isInstance(node)",
-      env,
+      languageOptions: { globals: globals.browser },
       errors,
       filename: "foo.js",
     },
     {
       code: "ChromeUtils.importESModule(''); file instanceof File",
       output: "ChromeUtils.importESModule(''); File.isInstance(file)",
-      env,
+      languageOptions: { globals: globals.browser },
       errors,
       filename: "foo.js",
     },
   ],
 });
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-ownerGlobal.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-ownerGlobal.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-ownerGlobal");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-returnValue.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-returnValue.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-returnValue");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, methodName) {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-services.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-services.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-services");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, serviceName, getterName, type = "CallExpression") {
   return {
     code,
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/use-static-import.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/use-static-import.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/use-static-import");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function callError() {
   return [{ messageId: "useStaticImport", type: "VariableDeclaration" }];
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-ci-uses.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-ci-uses.js
@@ -6,17 +6,17 @@
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var os = require("os");
 var rule = require("../lib/rules/valid-ci-uses");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, messageId, data) {
   return { code, errors: [{ messageId, data }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-lazy.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-lazy.js
@@ -5,19 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/valid-lazy");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({
-  parserOptions: { ecmaVersion: "latest", sourceType: "module" },
-});
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, name, messageId) {
   return { code, errors: [{ messageId, data: { name } }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-services-property.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-services-property.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/valid-services-property");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, messageId, data) {
   return { code, errors: [{ messageId, data }] };
 }
--- a/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-services.js
+++ b/tools/lint/eslint/eslint-plugin-mozilla/tests/valid-services.js
@@ -5,17 +5,17 @@
 
 // ------------------------------------------------------------------------------
 // Requirements
 // ------------------------------------------------------------------------------
 
 var rule = require("../lib/rules/valid-services");
 var RuleTester = require("eslint").RuleTester;
 
-const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: "latest" } });
+const ruleTester = new RuleTester();
 
 // ------------------------------------------------------------------------------
 // Tests
 // ------------------------------------------------------------------------------
 
 function invalidCode(code, alias) {
   return { code, errors: [{ messageId: "unknownProperty", data: { alias } }] };
 }