-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathrequire-unicode-sets-regexp.ts
46 lines (44 loc) · 1.04 KB
/
require-unicode-sets-regexp.ts
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
import { SnapshotRuleTester } from "eslint-snapshot-rule-tester"
import rule from "../../../lib/rules/require-unicode-sets-regexp"
const tester = new SnapshotRuleTester({
languageOptions: {
ecmaVersion: "latest",
sourceType: "module",
},
})
tester.run("require-unicode-sets-regexp", rule as any, {
valid: [`/a/v`],
invalid: [
`/a/`,
`/a/u`,
String.raw`/[\p{ASCII}]/iu`,
`/[[]/u`,
String.raw`/[^\P{Lowercase_Letter}]/giu`,
String.raw`/[^\P{ASCII}]/iu`,
String.raw`/[\P{ASCII}]/iu`,
...[
"&&",
"!!",
"##",
"$$",
"%%",
"**",
"++",
",,",
"..",
"::",
";;",
"<<",
"==",
">>",
"??",
"@@",
"^^",
"``",
"~~",
].map((punctuator) => ({
code: String.raw`/[a${punctuator}b]/u`,
})),
String.raw`/[+--b]/u`,
],
})