Skip to content

Commit 310440f

Browse files
authored
Fix false positives for disallowNeverMatch option in regexp/no-dupe-disjunctions rule (#81)
1 parent 18f1b31 commit 310440f

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

lib/rules/no-dupe-disjunctions.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,10 @@ export default createRule("no-dupe-disjunctions", {
5757
while (parent) {
5858
if (parent.type === "Alternative") {
5959
const index = parent.elements.indexOf(target)
60-
return index < parent.elements.length - 1
60+
if (index < parent.elements.length - 1) {
61+
return true
62+
}
63+
return hasAfterPattern(parent.parent)
6164
}
6265
if (parent.type === "Quantifier") {
6366
target = parent

tests/lib/rules/no-dupe-disjunctions.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const tester = new RuleTester({
1111
tester.run("no-dupe-disjunctions", rule as any, {
1212
valid: [
1313
...[
14+
String.raw`/^\s*(eslint-(?:en|dis)able)(?:\s+(\S|\S[\s\S]*\S))?\s*$/u`,
1415
`/a|b/`,
1516
`/(a|b)/`,
1617
`/(?:a|b)/`,

0 commit comments

Comments
 (0)