summaryrefslogtreecommitdiff
path: root/tests/functional/a/assignment_expression.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/functional/a/assignment_expression.py')
-rw-r--r--tests/functional/a/assignment_expression.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/functional/a/assignment_expression.py b/tests/functional/a/assignment_expression.py
index ed8400163..aa6a27874 100644
--- a/tests/functional/a/assignment_expression.py
+++ b/tests/functional/a/assignment_expression.py
@@ -8,6 +8,9 @@ else:
x = False
x = b if (b := True) else False
+x2: bool = b2 if (b2 := True) else False
+x3 = 0
+x3 += b3 if (b3 := 4) else 6
a = ["a ", "b ", "c "]
c = [text for el in a if (text := el.strip()) == "b"]
@@ -49,6 +52,24 @@ function = lambda: (
print(function())
+# https://github.com/PyCQA/pylint/issues/3763
+foo if (foo := 3 - 2) > 0 else 0 # [pointless-statement]
+
+
+# https://github.com/PyCQA/pylint/issues/4238
+l1 = f'The number {(count1 := 4)} ' \
+ f'is equal to {count1}'
+l2: str = (
+ f'The number {(count2 := 4)} '
+ f'is equal to {count2}'
+)
+l3 = "Hello "
+l3 += (
+ f'The number {(count3 := 4)} '
+ f'is equal to {count3}'
+)
+
+
# check wrong usage
assert err_a, (err_a := 2) # [used-before-assignment]
print(err_b and (err_b := 2)) # [used-before-assignment]