/
no-octal-escape.js
54 lines (47 loc) · 2.86 KB
/
no-octal-escape.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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/* eslint no-octal-escape: 0 */
/**
* @fileoverview Tests for no-octal-escape rule.
* @author Ian Christian Myers
*/
"use strict";
//------------------------------------------------------------------------------
// Requirements
//------------------------------------------------------------------------------
const rule = require("../../../lib/rules/no-octal-escape"),
{ RuleTester } = require("../../../lib/rule-tester");
//------------------------------------------------------------------------------
// Tests
//------------------------------------------------------------------------------
const ruleTester = new RuleTester();
ruleTester.run("no-octal-escape", rule, {
valid: [
"var foo = \"\\x51\";",
"var foo = \"foo \\\\251 bar\";",
"var foo = /([abc]) \\1/g;",
"var foo = '\\0';",
"'\\0 '",
"'\\0a'",
"'\\\\1'",
"'\\\\01'",
"'\\08'",
"'\\09'"
],
invalid: [
{ code: "var foo = \"foo \\01 bar\";", errors: [{ message: "Don't use octal: '\\01'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "var foo = \"foo \\251 bar\";", errors: [{ message: "Don't use octal: '\\251'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "var foo = \"\\751\";", errors: [{ message: "Don't use octal: '\\75'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "var foo = \"\\3s51\";", errors: [{ message: "Don't use octal: '\\3'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "var foo = \"\\\\\\751\";", errors: [{ message: "Don't use octal: '\\75'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\0\\1'", errors: [{ message: "Don't use octal: '\\1'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\0 \\1'", errors: [{ message: "Don't use octal: '\\1'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\0\\01'", errors: [{ message: "Don't use octal: '\\01'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\0 \\01'", errors: [{ message: "Don't use octal: '\\01'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\08\\1'", errors: [{ message: "Don't use octal: '\\1'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\08\\01'", errors: [{ message: "Don't use octal: '\\01'. Use '\\u....' instead.", type: "Literal" }] },
// Only the first one is reported
{ code: "'\\01\\02'", errors: [{ message: "Don't use octal: '\\01'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\02\\01'", errors: [{ message: "Don't use octal: '\\02'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\01\\2'", errors: [{ message: "Don't use octal: '\\01'. Use '\\u....' instead.", type: "Literal" }] },
{ code: "'\\2\\01'", errors: [{ message: "Don't use octal: '\\2'. Use '\\u....' instead.", type: "Literal" }] }
]
});