mirror of
https://github.com/syssec-utd/pylingual.git
synced 2026-05-10 18:39:03 -07:00
Alphabetized try-exception & added fall through test cases
This commit is contained in:
+383
-244
@@ -1,218 +1,11 @@
|
||||
def TryExcept():
|
||||
def a_TryExcept():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
print(3)
|
||||
|
||||
def TryExceptMulti():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except c:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptMultiFallback():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptMultiNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
except C as c:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptMultiNamedFallback():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptMultiNamedAndUnnamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptElseBare():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
else:
|
||||
print(3)
|
||||
print(4)
|
||||
|
||||
def TryExceptElseMulti():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
else:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptElseMultiFallback():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
else:
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def TryExceptElseNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
else:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptElseMultiNamedAndUnnamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
else:
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def TryFinallyBare():
|
||||
try:
|
||||
print(1)
|
||||
finally:
|
||||
print(2)
|
||||
print(3)
|
||||
|
||||
def TryExceptFinallyBare():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
finally:
|
||||
print(3)
|
||||
print(4)
|
||||
##### NOT YET IMPLEMENTED #####
|
||||
##### crashes cflow.py #####
|
||||
##def TryExceptFinallyBareSpecific():
|
||||
## try:
|
||||
## print(1)
|
||||
## except a:
|
||||
## print(2)
|
||||
## finally:
|
||||
## print(3)
|
||||
## print(4)
|
||||
##
|
||||
##def TryExceptMultiFinally():
|
||||
## try:
|
||||
## print(1)
|
||||
## except a:
|
||||
## print(2)
|
||||
## except b:
|
||||
## print(3)
|
||||
## finally:
|
||||
## print(4)
|
||||
## print(5)
|
||||
##
|
||||
## Broken
|
||||
##def TryExceptMultiFallbackFinally():
|
||||
## try:
|
||||
## print(1)
|
||||
## except a:
|
||||
## print(2)
|
||||
## except:
|
||||
## print(3)
|
||||
## finally:
|
||||
## print(4)
|
||||
## print(5)
|
||||
|
||||
def TryExceptMultiNamedFinally():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptMultiNamedFallbackFinally():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptMultiNamedAndUnnamedFinally():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
finally:
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def TryExceptElseFinallyBare():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
else:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptBareNested():
|
||||
def b_TryExceptBareNested():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
@@ -222,47 +15,41 @@ def TryExceptBareNested():
|
||||
except:
|
||||
print(4)
|
||||
|
||||
def TryExceptReturn():
|
||||
try:
|
||||
print(1)
|
||||
return 2
|
||||
except:
|
||||
print(2)
|
||||
|
||||
# Not currently working, see https://github.com/syssec-utd/pylingual/issues/24#issuecomment-3005215427
|
||||
def TryExceptRaise():
|
||||
def b1_TryExceptBareNestedFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
raise Exc
|
||||
|
||||
def TryExceptRaiseNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
raise Exc
|
||||
|
||||
### Expected to fail on 3.10- has the same issue as TryExceptFinally
|
||||
def TryExceptBareNestedNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptReturnNamed():
|
||||
def b2_TryExceptBareNestedEarlyFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
return 2
|
||||
except A as a:
|
||||
except:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def TryExceptBareNestedMulti():
|
||||
def b3_TryExceptBareNestedDoubleFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def c_TryExceptBareMultiNested():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
@@ -278,7 +65,349 @@ def TryExceptBareNestedMulti():
|
||||
except:
|
||||
print(7)
|
||||
|
||||
def TryExceptReturnMulti():
|
||||
def c1_TryExceptBareMultiNestedFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
except b:
|
||||
print(6)
|
||||
try:
|
||||
print(7)
|
||||
except:
|
||||
print(8)
|
||||
|
||||
def c2_TryExceptBareMultiNestedFallthrough2():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
except b:
|
||||
print(6)
|
||||
try:
|
||||
print(7)
|
||||
except:
|
||||
print(8)
|
||||
print(9)
|
||||
|
||||
def c3_TryExceptBareMultiNestedEarlyFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
except b:
|
||||
print(5)
|
||||
try:
|
||||
print(6)
|
||||
except:
|
||||
print(7)
|
||||
print(8)
|
||||
|
||||
def c4_TryExceptBareMultiNestedAllFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
except b:
|
||||
print(6)
|
||||
try:
|
||||
print(7)
|
||||
except:
|
||||
print(8)
|
||||
print(9)
|
||||
print(10)
|
||||
|
||||
def d_TryExceptBareNestedNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
|
||||
def d1_TryExceptBareNestedNamedFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def d2_TryExceptBareNestedNamedEarlyFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def d3_TryExceptBareNestedNamedDoubleFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
try:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def e_TryExceptElseBare():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
else:
|
||||
print(3)
|
||||
print(4)
|
||||
|
||||
def f_TryExceptElseFinallyBare():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
else:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def g_TryExceptElseMulti():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
else:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def h_TryExceptElseMultiFallback():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
else:
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def i_TryExceptElseMultiNamedAndUnnamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
else:
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def j_TryExceptElseNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
else:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def k_TryExceptFinallyBare():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
finally:
|
||||
print(3)
|
||||
print(4)
|
||||
|
||||
def l_TryExceptFinallyBareSpecific():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
finally:
|
||||
print(3)
|
||||
print(4)
|
||||
|
||||
def m_TryExceptMulti():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except c:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def n_TryExceptMultiFallback():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def o_TryExceptMultiFallbackFinally():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def p_TryExceptMultiNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
except C as c:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def q_TryExceptMultiNamedAndUnnamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def r_TryExceptMultiNamedAndUnnamedFinally():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
except:
|
||||
print(4)
|
||||
finally:
|
||||
print(5)
|
||||
print(6)
|
||||
|
||||
def s_TryExceptMultiNamedFallback():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except:
|
||||
print(3)
|
||||
print(4)
|
||||
|
||||
def t_TryExceptMultiNamedFallbackFinally():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def u_TryExceptMultiNamedFinally():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
except B as b:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def v_TryExceptMultiFinally():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
except b:
|
||||
print(3)
|
||||
finally:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
def w_TryExceptRaise():
|
||||
try:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
raise Exc
|
||||
|
||||
def x_TryExceptRaiseMulti():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
print(2)
|
||||
raise Exc
|
||||
except b:
|
||||
print(3)
|
||||
raise Exc
|
||||
|
||||
def y_TryExceptRaiseNamed():
|
||||
try:
|
||||
print(1)
|
||||
except A as a:
|
||||
print(2)
|
||||
raise Exc
|
||||
|
||||
def z_TryExceptReturn():
|
||||
try:
|
||||
print(1)
|
||||
return 2
|
||||
except:
|
||||
print(2)
|
||||
|
||||
def aa_TryExceptReturnMulti():
|
||||
try:
|
||||
print(1)
|
||||
return 2
|
||||
@@ -287,12 +416,22 @@ def TryExceptReturnMulti():
|
||||
except b:
|
||||
print(3)
|
||||
|
||||
def TryExceptRaiseMulti():
|
||||
def ab_TryExceptReturnNamed():
|
||||
try:
|
||||
print(1)
|
||||
except a:
|
||||
return 2
|
||||
except A as a:
|
||||
print(2)
|
||||
raise Exc
|
||||
except b:
|
||||
print(3)
|
||||
raise Exc
|
||||
|
||||
def ac_TryFinallyBareFallthrough():
|
||||
try:
|
||||
print(1)
|
||||
finally:
|
||||
print(2)
|
||||
print(3)
|
||||
|
||||
def ad_TryFinallyBare():
|
||||
try:
|
||||
print(1)
|
||||
finally:
|
||||
print(2)
|
||||
Reference in New Issue
Block a user