Skip to content

Commit d892b0f

Browse files
committed
Add tests for augmenting assigns recursively (#376)
1 parent ea34674 commit d892b0f

10 files changed

Lines changed: 63 additions & 1 deletion
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
def a:= if True then 20 else 10
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
a: int = 20 if True else 10
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
def a:= match 40
2+
2 => 3
3+
4 => 30
4+
_ => 300
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
match 40:
2+
case 2:
3+
a = 3
4+
case 4:
5+
a = 30
6+
case _:
7+
a = 300
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
def x := 20
2+
def a: Int := if x > 10 then
3+
if x > 30 then
4+
x + 1
5+
else
6+
x - 1
7+
else
8+
x
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
x: int = 20
2+
if x > 10:
3+
if x > 30:
4+
a = x + 1
5+
else:
6+
a = x - 1
7+
else:
8+
a = x
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
def g() -> Int raise [Exception] =>
2+
raise Exception("A")
3+
4+
def a := g() handle
5+
err: Exception => x + 10
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
def g() -> int:
2+
raise Exception("A")
3+
4+
a = None
5+
try:
6+
a: int = g()
7+
except Exception as err:
8+
a = x + 10

tests/resource/valid/definition/function_with_try_except_check.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@ def g() -> int =>
44
def f(x: int) -> int =>
55
try:
66
return g()
7-
except:
7+
except Exception as err:
88
return x + 10

tests/system/valid/definition.rs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,26 @@ fn assign_tuples() -> OutTestRet {
1010
test_directory(true, &["definition"], &["definition", "target"], "assign_tuples")
1111
}
1212

13+
#[test]
14+
fn assign_with_if() -> OutTestRet {
15+
test_directory(true, &["definition"], &["definition", "target"], "assign_with_if")
16+
}
17+
18+
#[test]
19+
fn assign_with_match() -> OutTestRet {
20+
test_directory(true, &["definition"], &["definition", "target"], "assign_with_match")
21+
}
22+
23+
#[test]
24+
fn assign_with_nested_if() -> OutTestRet {
25+
test_directory(true, &["definition"], &["definition", "target"], "assign_with_nested_if")
26+
}
27+
28+
#[test]
29+
fn assign_with_try_except() -> OutTestRet {
30+
test_directory(true, &["definition"], &["definition", "target"], "assign_with_try_except")
31+
}
32+
1333
#[test]
1434
fn function_ret_super_in_class() -> OutTestRet {
1535
test_directory(true, &["definition"], &["definition", "target"], "function_ret_super_in_class")

0 commit comments

Comments
 (0)