forked from eslint/eslint
-
Notifications
You must be signed in to change notification settings - Fork 0
/
eqeqeq.js
35 lines (31 loc) · 1.61 KB
/
eqeqeq.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/**
* @fileoverview Tests for eqeqeq rule.
* @author Nicholas C. Zakas
*/
//------------------------------------------------------------------------------
// Requirements
//------------------------------------------------------------------------------
var eslintTester = require("eslint-tester");
//------------------------------------------------------------------------------
// Tests
//------------------------------------------------------------------------------
eslintTester.addRuleTest("lib/rules/eqeqeq", {
valid: [
"a === b",
"a !== b",
{ code: "typeof a == 'number'", args: [1, "smart"] },
{ code: "'string' != typeof a", args: [1, "smart"] },
{ code: "'hello' != 'world'", args: [1, "smart"] },
{ code: "2 == 3", args: [1, "smart"] },
{ code: "true == true", args: [1, "smart"] },
{ code: "null == a", args: [1, "smart"] },
{ code: "a == null", args: [1, "smart"] }
],
invalid: [
{ code: "a == b", errors: [{ message: "Expected '===' and instead saw '=='.", type: "BinaryExpression"}] },
{ code: "a != b", errors: [{ message: "Expected '!==' and instead saw '!='.", type: "BinaryExpression"}] },
{ code: "true == 1", args: [1, "smart"], errors: [{ message: "Expected '===' and instead saw '=='.", type: "BinaryExpression"}] },
{ code: "0 != '1'", args: [1, "smart"], errors: [{ message: "Expected '!==' and instead saw '!='.", type: "BinaryExpression"}] },
{ code: "'wee' == /wee/", args: [1, "smart"], errors: [{ message: "Expected '===' and instead saw '=='.", type: "BinaryExpression"}] }
]
});