ruff/crates/ruff_python_parser/resources/invalid/re_lexing
Dhruv Manilawala ed948eaefb
Avoid moving back the lexer for triple-quoted fstring (#11939)
## Summary

This PR avoids moving back the lexer for a triple-quoted f-string during
the re-lexing phase.

The reason this is a problem is that for a triple-quoted f-string the
newlines are part of the f-string itself, specifically they'll be part
of the `FStringMiddle` token. So, if we moved the lexer back, there
would be a `Newline` token whose range would be in between an
`FStringMiddle` token. This creates a panic in downstream usage.

fixes: #11937 

## Test Plan

Add test cases and validate the snapshots.
2024-06-20 16:27:36 +05:30
..
triple_quoted_fstring_1.py Avoid moving back the lexer for triple-quoted fstring (#11939) 2024-06-20 16:27:36 +05:30
triple_quoted_fstring_2.py Avoid moving back the lexer for triple-quoted fstring (#11939) 2024-06-20 16:27:36 +05:30
triple_quoted_fstring_3.py Avoid moving back the lexer for triple-quoted fstring (#11939) 2024-06-20 16:27:36 +05:30