Bug 1465530 - Enable ESLint rule require-expected-throws-or-rejects for testing/marionette/. r?ato
MozReview-Commit-ID: 2CM4x0vUXbC
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -52,17 +52,16 @@ module.exports = {
// XXX Bug 1452706. These directories are still being fixed, so turn off
// mozilla/require-expected-throws-or-rejects for now.
"files": [
"browser/extensions/formautofill/test/unit/test_storage_tombstones.js",
"browser/modules/test/browser/**",
"browser/tools/mozscreenshots/browser_boundingbox.js",
"devtools/client/inspector/extensions/test/head_devtools_inspector_sidebar.js",
"storage/test/unit/**",
- "testing/marionette/test/unit/**",
"toolkit/components/extensions/**",
"toolkit/mozapps/extensions/test/xpcshell/**"
],
"rules": {
"mozilla/require-expected-throws-or-rejects": "off",
}
}, {
// XXX Bug 1452706. These directories are still being fixed, so turn off
--- a/testing/marionette/test/unit/test_assert.js
+++ b/testing/marionette/test/unit/test_assert.js
@@ -219,18 +219,18 @@ add_test(function test_array() {
Assert.throws(() => assert.array(42, "custom"), /custom/);
run_next_test();
});
add_test(function test_that() {
equal(1, assert.that(n => n + 1)(1));
- Assert.throws(() => assert.that(() => false)());
- Assert.throws(() => assert.that(val => val)(false));
+ Assert.throws(() => assert.that(() => false)(), InvalidArgumentError);
+ Assert.throws(() => assert.that(val => val)(false), InvalidArgumentError);
Assert.throws(() => assert.that(val => val, "foo", SessionNotCreatedError)(false),
SessionNotCreatedError);
Assert.throws(() => assert.that(() => false, "custom")(), /custom/);
run_next_test();
});
--- a/testing/marionette/test/unit/test_element.js
+++ b/testing/marionette/test/unit/test_element.js
@@ -301,37 +301,37 @@ add_test(function test_coordinates() {
ok(p.hasOwnProperty("y"));
equal("number", typeof p.x);
equal("number", typeof p.y);
deepEqual({x: 50, y: 50}, element.coordinates(domEl));
deepEqual({x: 10, y: 10}, element.coordinates(domEl, 10, 10));
deepEqual({x: -5, y: -5}, element.coordinates(domEl, -5, -5));
- Assert.throws(() => element.coordinates(null));
+ Assert.throws(() => element.coordinates(null), /node is null/);
- Assert.throws(() => element.coordinates(domEl, "string", undefined));
- Assert.throws(() => element.coordinates(domEl, undefined, "string"));
- Assert.throws(() => element.coordinates(domEl, "string", "string"));
- Assert.throws(() => element.coordinates(domEl, {}, undefined));
- Assert.throws(() => element.coordinates(domEl, undefined, {}));
- Assert.throws(() => element.coordinates(domEl, {}, {}));
- Assert.throws(() => element.coordinates(domEl, [], undefined));
- Assert.throws(() => element.coordinates(domEl, undefined, []));
- Assert.throws(() => element.coordinates(domEl, [], []));
+ Assert.throws(() => element.coordinates(domEl, "string", undefined), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, undefined, "string"), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, "string", "string"), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, {}, undefined), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, undefined, {}), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, {}, {}), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, [], undefined), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, undefined, []), /Offset must be a number/);
+ Assert.throws(() => element.coordinates(domEl, [], []), /Offset must be a number/);
run_next_test();
});
add_test(function test_WebElement_ctor() {
let el = new WebElement("foo");
equal(el.uuid, "foo");
for (let t of [42, true, [], {}, null, undefined]) {
- Assert.throws(() => new WebElement(t));
+ Assert.throws(() => new WebElement(t), /to be a string/);
}
run_next_test();
});
add_test(function test_WebElemenet_is() {
let a = new WebElement("a");
let b = new WebElement("b");
--- a/testing/marionette/test/unit/test_message.js
+++ b/testing/marionette/test/unit/test_message.js
@@ -89,21 +89,21 @@ add_test(function test_Command_fromPacke
let msg = c1.toPacket();
let c2 = Command.fromPacket(msg);
equal(c1.id, c2.id);
equal(c1.name, c2.name);
equal(c1.parameters, c2.parameters);
- Assert.throws(() => Command.fromPacket([null, 2, "foo", {}]));
- Assert.throws(() => Command.fromPacket([1, 2, "foo", {}]));
- Assert.throws(() => Command.fromPacket([0, null, "foo", {}]));
- Assert.throws(() => Command.fromPacket([0, 2, null, {}]));
- Assert.throws(() => Command.fromPacket([0, 2, "foo", false]));
+ Assert.throws(() => Command.fromPacket([null, 2, "foo", {}]), /InvalidArgumentError/);
+ Assert.throws(() => Command.fromPacket([1, 2, "foo", {}]), /InvalidArgumentError/);
+ Assert.throws(() => Command.fromPacket([0, null, "foo", {}]), /InvalidArgumentError/);
+ Assert.throws(() => Command.fromPacket([0, 2, null, {}]), /InvalidArgumentError/);
+ Assert.throws(() => Command.fromPacket([0, 2, "foo", false]), /InvalidArgumentError/);
let nullParams = Command.fromPacket([0, 2, "foo", null]);
equal("[object Object]", Object.prototype.toString.call(nullParams.parameters));
run_next_test();
});
add_test(function test_Command_Type() {
@@ -226,20 +226,20 @@ add_test(function test_Response_fromPack
let msg = r1.toPacket();
let r2 = Response.fromPacket(msg);
equal(r1.id, r2.id);
equal(r1.error, r2.error);
equal(r1.body, r2.body);
- Assert.throws(() => Response.fromPacket([null, 2, "foo", {}]));
- Assert.throws(() => Response.fromPacket([0, 2, "foo", {}]));
- Assert.throws(() => Response.fromPacket([1, null, "foo", {}]));
- Assert.throws(() => Response.fromPacket([1, 2, null, {}]));
+ Assert.throws(() => Response.fromPacket([null, 2, "foo", {}]), InvalidArgumentError);
+ Assert.throws(() => Response.fromPacket([0, 2, "foo", {}]), InvalidArgumentError);
+ Assert.throws(() => Response.fromPacket([1, null, "foo", {}]), InvalidArgumentError);
+ Assert.throws(() => Response.fromPacket([1, 2, null, {}]), InvalidArgumentError);
Response.fromPacket([1, 2, "foo", null]);
run_next_test();
});
add_test(function test_Response_Type() {
equal(1, Response.Type);
run_next_test();
--- a/testing/marionette/test/unit/test_session.js
+++ b/testing/marionette/test/unit/test_session.js
@@ -427,52 +427,54 @@ add_test(function test_Capabilities_from
// matching
let caps = new session.Capabilities();
caps = fromJSON({acceptInsecureCerts: true});
equal(true, caps.get("acceptInsecureCerts"));
caps = fromJSON({acceptInsecureCerts: false});
equal(false, caps.get("acceptInsecureCerts"));
- Assert.throws(() => fromJSON({acceptInsecureCerts: "foo"}));
+ Assert.throws(() => fromJSON({acceptInsecureCerts: "foo"}), InvalidArgumentError);
for (let strategy of Object.values(session.PageLoadStrategy)) {
caps = fromJSON({pageLoadStrategy: strategy});
equal(strategy, caps.get("pageLoadStrategy"));
}
- Assert.throws(() => fromJSON({pageLoadStrategy: "foo"}));
+ Assert.throws(() => fromJSON({pageLoadStrategy: "foo"}), InvalidArgumentError);
let proxyConfig = {proxyType: "manual"};
caps = fromJSON({proxy: proxyConfig});
equal("manual", caps.get("proxy").proxyType);
let timeoutsConfig = {implicit: 123};
caps = fromJSON({timeouts: timeoutsConfig});
equal(123, caps.get("timeouts").implicit);
caps = fromJSON({"moz:accessibilityChecks": true});
equal(true, caps.get("moz:accessibilityChecks"));
caps = fromJSON({"moz:accessibilityChecks": false});
equal(false, caps.get("moz:accessibilityChecks"));
- Assert.throws(() => fromJSON({"moz:accessibilityChecks": "foo"}));
- Assert.throws(() => fromJSON({"moz:accessibilityChecks": 1}));
+ Assert.throws(() => fromJSON({"moz:accessibilityChecks": "foo"}), InvalidArgumentError);
+ Assert.throws(() => fromJSON({"moz:accessibilityChecks": 1}), InvalidArgumentError);
caps = fromJSON({"moz:useNonSpecCompliantPointerOrigin": false});
equal(false, caps.get("moz:useNonSpecCompliantPointerOrigin"));
caps = fromJSON({"moz:useNonSpecCompliantPointerOrigin": true});
equal(true, caps.get("moz:useNonSpecCompliantPointerOrigin"));
- Assert.throws(() => fromJSON({"moz:useNonSpecCompliantPointerOrigin": "foo"}));
- Assert.throws(() => fromJSON({"moz:useNonSpecCompliantPointerOrigin": 1}));
+ Assert.throws(() => fromJSON({"moz:useNonSpecCompliantPointerOrigin": "foo"}),
+ InvalidArgumentError);
+ Assert.throws(() => fromJSON({"moz:useNonSpecCompliantPointerOrigin": 1}),
+ InvalidArgumentError);
caps = fromJSON({"moz:webdriverClick": true});
equal(true, caps.get("moz:webdriverClick"));
caps = fromJSON({"moz:webdriverClick": false});
equal(false, caps.get("moz:webdriverClick"));
- Assert.throws(() => fromJSON({"moz:webdriverClick": "foo"}));
- Assert.throws(() => fromJSON({"moz:webdriverClick": 1}));
+ Assert.throws(() => fromJSON({"moz:webdriverClick": "foo"}), InvalidArgumentError);
+ Assert.throws(() => fromJSON({"moz:webdriverClick": 1}), InvalidArgumentError);
run_next_test();
});
// use session.Proxy.toJSON to test marshal
add_test(function test_marshal() {
let proxy = new session.Proxy();