runnable test case for try-finally
authorStefan Behnel <scoder@users.berlios.de>
Mon, 8 Dec 2008 21:22:21 +0000 (22:22 +0100)
committerStefan Behnel <scoder@users.berlios.de>
Mon, 8 Dec 2008 21:22:21 +0000 (22:22 +0100)
tests/run/tryfinally.pyx [new file with mode: 0644]

diff --git a/tests/run/tryfinally.pyx b/tests/run/tryfinally.pyx
new file mode 100644 (file)
index 0000000..8caac5d
--- /dev/null
@@ -0,0 +1,61 @@
+u"""
+>>> try:
+...     raise ValueError
+... finally:
+...     raise TypeError
+Traceback (most recent call last):
+TypeError
+>>> finally_except()
+Traceback (most recent call last):
+TypeError
+
+>>> def try_return_py():
+...    try:
+...        return 1
+...    finally:
+...        return 2
+>>> try_return_py()
+2
+>>> try_return_cy()
+2
+
+>>> i=1
+>>> for i in range(3):
+...     try:
+...         continue
+...     finally:
+...         i+=1
+>>> i
+3
+>>> try_continue(3)
+3
+"""
+
+def finally_except():
+    try:
+        raise ValueError
+    finally:
+        raise TypeError
+
+def try_return_cy():
+    try:
+        return 1
+    finally:
+        return 2
+
+def try_return_temp(a):
+    b = a+2
+    try:
+        c = a+b
+        return c
+    finally:
+        print b-a
+
+def try_continue(a):
+    i=1
+    for i in range(a):
+        try:
+            continue
+        finally:
+            i+=1
+    return i