summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-02-06 03:27:39 +0200
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-02-06 03:27:39 +0200
commit9fce77c993fce3690f6f6ce6a5c1097e6c74f448 (patch)
treefd7d62fba55f385e76c8f2aa0112e97de9318dba
parent3c95ba7e4eda0762d735503b718119e361eb7295 (diff)
downloadmicropython-9fce77c993fce3690f6f6ce6a5c1097e6c74f448.tar.gz
micropython-9fce77c993fce3690f6f6ce6a5c1097e6c74f448.zip
Add more finally + break/continue testcases.
-rw-r--r--tests/basics/try-finally-break.py14
-rw-r--r--tests/basics/try-finally-loops.py35
2 files changed, 35 insertions, 14 deletions
diff --git a/tests/basics/try-finally-break.py b/tests/basics/try-finally-break.py
deleted file mode 100644
index af1704da95..0000000000
--- a/tests/basics/try-finally-break.py
+++ /dev/null
@@ -1,14 +0,0 @@
-for i in range(4):
- print(i)
- try:
- while True:
- try:
- try:
- break
- finally:
- print('finally 1')
- finally:
- print('finally 2')
- print('here')
- finally:
- print('finnaly 3')
diff --git a/tests/basics/try-finally-loops.py b/tests/basics/try-finally-loops.py
new file mode 100644
index 0000000000..28a8373dc0
--- /dev/null
+++ b/tests/basics/try-finally-loops.py
@@ -0,0 +1,35 @@
+# Test various loop types, some may be implemented/optimized differently
+while True:
+ try:
+ break
+ finally:
+ print('finally 1')
+
+
+for i in [1, 5, 10]:
+ try:
+ continue
+ finally:
+ print('finally 2')
+
+for i in range(3):
+ try:
+ continue
+ finally:
+ print('finally 3')
+
+# Multi-level
+for i in range(4):
+ print(i)
+ try:
+ while True:
+ try:
+ try:
+ break
+ finally:
+ print('finally 1')
+ finally:
+ print('finally 2')
+ print('here')
+ finally:
+ print('finnaly 3')