diff --git a/test/TryExcept.py b/test/TryExcept.py index ac8efff..173895c 100644 --- a/test/TryExcept.py +++ b/test/TryExcept.py @@ -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) \ No newline at end of file