test.fileTests: fix caseExpr for empty name #8

Merged
milahu merged 1 commit from patch-1 into main 2022-09-13 09:57:36 +02:00
milahu commented 2022-09-12 17:54:51 +02:00 (Migrated from github.com)

problem was, \s matches newline

bad: text is parsed as name

> var e = /\s*#\s*(.*)(?:\r\n|\r|\n)([^]*?)==+>([^]*?)(?:$|(?:\r\n|\r|\n)+(?=#))/gy
undefined
> e.exec("#\na\n==>\nb").slice(1,3)
[ 'a', '' ]

good: name is empty

> var e = /\s*#[ \t]*(.*)(?:\r\n|\r|\n)([^]*?)==+>([^]*?)(?:$|(?:\r\n|\r|\n)+(?=#))/gy
undefined
> e.exec("#\na\n==>\nb").slice(1,3)
[ '', 'a\n' ]
problem was, `\s` matches newline bad: text is parsed as name ``` > var e = /\s*#\s*(.*)(?:\r\n|\r|\n)([^]*?)==+>([^]*?)(?:$|(?:\r\n|\r|\n)+(?=#))/gy undefined > e.exec("#\na\n==>\nb").slice(1,3) [ 'a', '' ] ``` good: name is empty ``` > var e = /\s*#[ \t]*(.*)(?:\r\n|\r|\n)([^]*?)==+>([^]*?)(?:$|(?:\r\n|\r|\n)+(?=#))/gy undefined > e.exec("#\na\n==>\nb").slice(1,3) [ '', 'a\n' ] ```
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lezer/generator!8
No description provided.