mirror of
https://github.com/astral-sh/ruff.git
synced 2025-07-23 21:15:19 +00:00
Fix parenthesizing of implicit strings (#6852)
This commit is contained in:
parent
1cd7790a8a
commit
8b46b71038
3 changed files with 45 additions and 3 deletions
|
@ -124,3 +124,9 @@ test_particular = [
|
|||
'c'
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
# Regression test for https://github.com/astral-sh/ruff/issues/5893
|
||||
x = ("""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""" """bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb""")
|
||||
x = (f"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""" f"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb""")
|
||||
x = (b"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""" b"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb""")
|
||||
|
|
|
@ -79,14 +79,14 @@ impl NeedsParentheses for ExprConstant {
|
|||
_parent: AnyNodeRef,
|
||||
context: &PyFormatContext,
|
||||
) -> OptionalParentheses {
|
||||
if is_multiline_string(self, context.source())
|
||||
if self.value.is_implicit_concatenated() {
|
||||
OptionalParentheses::Multiline
|
||||
} else if is_multiline_string(self, context.source())
|
||||
|| self.value.is_none()
|
||||
|| self.value.is_bool()
|
||||
|| self.value.is_ellipsis()
|
||||
{
|
||||
OptionalParentheses::Never
|
||||
} else if self.value.is_implicit_concatenated() {
|
||||
OptionalParentheses::Multiline
|
||||
} else if should_use_best_fit(self, context) {
|
||||
OptionalParentheses::BestFit
|
||||
} else {
|
||||
|
|
|
@ -130,6 +130,12 @@ test_particular = [
|
|||
'c'
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
# Regression test for https://github.com/astral-sh/ruff/issues/5893
|
||||
x = ("""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""" """bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb""")
|
||||
x = (f"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""" f"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb""")
|
||||
x = (b"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""" b"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb""")
|
||||
```
|
||||
|
||||
## Outputs
|
||||
|
@ -284,6 +290,21 @@ test_particular = [
|
|||
|
||||
# Parenthesized string continuation with messed up indentation
|
||||
{"key": ([], "a" "b" "c")}
|
||||
|
||||
|
||||
# Regression test for https://github.com/astral-sh/ruff/issues/5893
|
||||
x = (
|
||||
"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"""
|
||||
"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"""
|
||||
)
|
||||
x = (
|
||||
f"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"""
|
||||
f"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"""
|
||||
)
|
||||
x = (
|
||||
b"""aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"""
|
||||
b"""bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"""
|
||||
)
|
||||
```
|
||||
|
||||
|
||||
|
@ -438,6 +459,21 @@ test_particular = [
|
|||
|
||||
# Parenthesized string continuation with messed up indentation
|
||||
{'key': ([], 'a' 'b' 'c')}
|
||||
|
||||
|
||||
# Regression test for https://github.com/astral-sh/ruff/issues/5893
|
||||
x = (
|
||||
'''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'''
|
||||
'''bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'''
|
||||
)
|
||||
x = (
|
||||
f'''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'''
|
||||
f'''bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'''
|
||||
)
|
||||
x = (
|
||||
b'''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'''
|
||||
b'''bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'''
|
||||
)
|
||||
```
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue