(py-electric-colon): use a save-excursion instead of a progn in
[python/dscho.git] / Lib / test / test_opcodes.py
blobb1e944b4d2f6585f5546d0f46352999466ccd57e
1 # Python test set -- part 2, opcodes
3 from test_support import *
6 print '2. Opcodes'
7 print 'XXX Not yet fully implemented'
9 print '2.1 try inside for loop'
10 n = 0
11 for i in range(10):
12 n = n+i
13 try: 1/0
14 except NameError: pass
15 except ZeroDivisionError: pass
16 except TypeError: pass
17 try: pass
18 except: pass
19 try: pass
20 finally: pass
21 n = n+i
22 if n <> 90:
23 raise TestFailed, 'try inside for'
26 print '2.2 raise class exceptions'
28 class AClass: pass
29 class BClass(AClass): pass
30 class CClass: pass
32 try: raise AClass()
33 except: pass
35 try: raise AClass()
36 except AClass: pass
38 try: raise BClass()
39 except AClass: pass
41 try: raise BClass()
42 except CClass: raise TestFailed
43 except: pass
45 a = AClass()
46 b = BClass()
48 try: raise AClass, b
49 except BClass, v: raise TestFailed
50 except AClass, v:
51 if v != b: raise TestFailed
54 try: raise b
55 except AClass, v:
56 if v != b: raise TestFailed
58 try: raise BClass, a
59 except TypeError: pass