annotate Lib/test/test_opcodes.py @ 4566:6403c94de50d legacy-trunk

Added safeguard against failure in __del__.
author Guido van Rossum <guido@python.org>
date Wed, 27 Nov 1996 19:39:58 +0000
parents 6a04256ea087
children 9a56452c7e8e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
653
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
1 # Python test set -- part 2, opcodes
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
2
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
3 from test_support import *
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
4
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
5
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
6 print '2. Opcodes'
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
7 print 'XXX Not yet fully implemented'
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
8
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
9 print '2.1 try inside for loop'
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
10 n = 0
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
11 for i in range(10):
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
12 n = n+i
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
13 try: 1/0
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
14 except NameError: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
15 except ZeroDivisionError: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
16 except TypeError: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
17 try: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
18 except: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
19 try: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
20 finally: pass
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
21 n = n+i
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
22 if n <> 90:
74942ec70430 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
23 raise TestFailed, 'try inside for'
2302
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
24
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
25
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
26 print '2.2 raise class exceptions'
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
27
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
28 class AClass: pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
29 class BClass(AClass): pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
30 class CClass: pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
31
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
32 try: raise AClass()
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
33 except: pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
34
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
35 try: raise AClass()
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
36 except AClass: pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
37
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
38 try: raise BClass()
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
39 except AClass: pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
40
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
41 try: raise BClass()
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
42 except CClass: raise TestFailed
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
43 except: pass
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
44
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
45 a = AClass()
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
46 b = BClass()
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
47
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
48 try: raise AClass, b
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
49 except BClass, v: raise TestFailed
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
50 except AClass, v:
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
51 if v != b: raise TestFailed
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
52
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
53
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
54 try: raise b
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
55 except AClass, v:
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
56 if v != b: raise TestFailed
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
57
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
58 try: raise BClass, a
6a04256ea087 test class exceptions
Guido van Rossum <guido@python.org>
parents: 853
diff changeset
59 except TypeError: pass