Added 'description' class attribute to every command class (to help the
[python/dscho.git] / Lib / dos-8x3 / test_opc.py
blobbdace26a472b4d64901d3c8fdbb28527f4b011b4
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
31 class DClass(AClass):
32 def __init__(self, ignore):
33 pass
35 try: raise AClass()
36 except: pass
38 try: raise AClass()
39 except AClass: pass
41 try: raise BClass()
42 except AClass: pass
44 try: raise BClass()
45 except CClass: raise TestFailed
46 except: pass
48 a = AClass()
49 b = BClass()
51 try: raise AClass, b
52 except BClass, v:
53 if v != b: raise TestFailed
54 else: raise TestFailed
56 try: raise b
57 except AClass, v:
58 if v != b: raise TestFailed
60 # not enough arguments
61 try: raise BClass, a
62 except TypeError: pass
64 try: raise DClass, a
65 except DClass, v:
66 if not isinstance(v, DClass):
67 raise TestFailed
69 print '2.3 comparing function objects'
71 f = eval('lambda: None')
72 g = eval('lambda: None')
73 if f != g: raise TestFailed
75 f = eval('lambda a: a')
76 g = eval('lambda a: a')
77 if f != g: raise TestFailed
79 f = eval('lambda a=1: a')
80 g = eval('lambda a=1: a')
81 if f != g: raise TestFailed
83 f = eval('lambda: 0')
84 g = eval('lambda: 1')
85 if f == g: raise TestFailed
87 f = eval('lambda: None')
88 g = eval('lambda a: None')
89 if f == g: raise TestFailed
91 f = eval('lambda a: None')
92 g = eval('lambda b: None')
93 if f == g: raise TestFailed
95 f = eval('lambda a: None')
96 g = eval('lambda a=None: None')
97 if f == g: raise TestFailed
99 f = eval('lambda a=0: None')
100 g = eval('lambda a=1: None')
101 if f == g: raise TestFailed