blob: b1e944b4d2f6585f5546d0f46352999466ccd57e [file] [log] [blame]
Guido van Rossum5c971671996-07-22 15:23:25 +00001# Python test set -- part 2, opcodes
2
3from test_support import *
4
5
6print '2. Opcodes'
7print 'XXX Not yet fully implemented'
8
9print '2.1 try inside for loop'
10n = 0
11for 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
22if n <> 90:
23 raise TestFailed, 'try inside for'
24
25
26print '2.2 raise class exceptions'
27
28class AClass: pass
29class BClass(AClass): pass
30class CClass: pass
31
32try: raise AClass()
33except: pass
34
35try: raise AClass()
36except AClass: pass
37
38try: raise BClass()
39except AClass: pass
40
41try: raise BClass()
42except CClass: raise TestFailed
43except: pass
44
45a = AClass()
46b = BClass()
47
48try: raise AClass, b
49except BClass, v: raise TestFailed
50except AClass, v:
51 if v != b: raise TestFailed
52
53
54try: raise b
55except AClass, v:
56 if v != b: raise TestFailed
57
58try: raise BClass, a
59except TypeError: pass