Skip to content

Commit

Permalink
test: add test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
ota-meshi committed Jul 23, 2023
1 parent 44d165d commit 2f25a57
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions tests/lib/rules/no-invalid-regexp.js
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,8 @@ ruleTester.run("no-invalid-regexp", rule, {
"new RegExp('[A&&B]', 'v')",
"new RegExp('[A--[0-9]]', 'v')",
"new RegExp('[\\\\p{Basic_Emoji}--\\\\q{a|bc|def}]', 'v')",
"new RegExp('[A--B]', flags)", // valid only with `v` flag
"new RegExp('[[]\\\\u{0}*', flags)", // valid only with `u` flag

// allowConstructorFlags
{
Expand Down Expand Up @@ -297,6 +299,14 @@ ruleTester.run("no-invalid-regexp", rule, {
},

// ES2024
{
code: "new RegExp('[[]', 'v');",
errors: [{
messageId: "regexMessage",
data: { message: "Invalid regular expression: /[[]/u: Unterminated character class" },
type: "NewExpression"
}]
},
{
code: "new RegExp('.', 'uv');",
errors: [{
Expand All @@ -312,6 +322,22 @@ ruleTester.run("no-invalid-regexp", rule, {
data: { message: "Regex 'u' and 'v' flags cannot be used together" },
type: "NewExpression"
}]
},
{
code: "new RegExp('[A--B]' /* valid only with `v` flag */, 'u')",
errors: [{
messageId: "regexMessage",
data: { message: "Invalid regular expression: /[A--B]/u: Range out of order in character class" },
type: "NewExpression"
}]
},
{
code: "new RegExp('[[]\\\\u{0}*' /* valid only with `u` flag */, 'v')",
errors: [{
messageId: "regexMessage",
data: { message: "Invalid regular expression: /[[]\\u{0}*/u: Unterminated character class" },
type: "NewExpression"
}]
}
]
});

0 comments on commit 2f25a57

Please sign in to comment.