-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathnegation.ts
53 lines (51 loc) · 1.64 KB
/
negation.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
47
48
49
50
51
52
53
import { SnapshotRuleTester } from "eslint-snapshot-rule-tester"
import rule from "../../../lib/rules/negation"
const tester = new SnapshotRuleTester({
languageOptions: {
ecmaVersion: "latest",
sourceType: "module",
},
})
tester.run("negation", rule as any, {
valid: [
String.raw`/[\d]/`,
String.raw`/[^\d\s]/`,
String.raw`/[^\p{ASCII}]/iu`,
String.raw`/[^\P{Ll}]/iu`,
String.raw`/[\p{Basic_Emoji}]/v`,
String.raw`/[^\P{Lowercase_Letter}]/iu`,
String.raw`/[^[^a][^b]]/v`,
],
invalid: [
String.raw`/[^\d]/`,
String.raw`/[^\D]/`,
String.raw`/[^\w]/`,
String.raw`/[^\W]/`,
String.raw`/[^\s]/`,
String.raw`/[^\S]/`,
String.raw`/[^\p{ASCII}]/u`,
String.raw`/[^\P{ASCII}]/u`,
String.raw`/[^\p{Script=Hiragana}]/u`,
String.raw`/[^\P{Script=Hiragana}]/u`,
String.raw`/[^\P{Ll}]/u;`,
String.raw`/[^\P{White_Space}]/iu;`,
String.raw`const s ="[^\\w]"
new RegExp(s)`,
String.raw`const s ="[^\\w]"
new RegExp(s)
new RegExp(s)`,
String.raw`const s ="[^\\w]"
new RegExp(s, "i")
new RegExp(s)`,
String.raw`const s ="[^\\w]"
Number(s)
new RegExp(s)`,
String.raw`/[^\P{Lowercase_Letter}]/iv`,
String.raw`/[^[^abc]]/v`,
String.raw`/[^[^\q{a|1|A}&&\w]]/v`,
String.raw`/[^[^a]]/iv`,
String.raw`/[^[^\P{Lowercase_Letter}]]/iv`,
String.raw`/[^[^[\p{Lowercase_Letter}&&[ABC]]]]/iv`,
String.raw`/[^[^[\p{Lowercase_Letter}&&A]--B]]/iv`,
],
})