mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 03:20:18 +00:00
44 lines
617 B
Python
44 lines
617 B
Python
class A:
|
|
def __getitem__(self, i):
|
|
raise KeyError(i)
|
|
|
|
try:
|
|
a = A()
|
|
b = a[1]
|
|
except:
|
|
print("PASS 01")
|
|
|
|
try:
|
|
a = {'1': 3, 4: None}
|
|
x = a[1]
|
|
except:
|
|
print("PASS 02")
|
|
assert True
|
|
|
|
def f():
|
|
try:
|
|
raise KeyError('foo')
|
|
except A: # will fail to catch
|
|
assert False
|
|
except:
|
|
print("PASS 03")
|
|
assert True
|
|
|
|
f()
|
|
|
|
def f1():
|
|
try:
|
|
assert 1 + 2 == 3
|
|
try:
|
|
a = {1: 2, 3: 4}
|
|
x = a[0]
|
|
except A:
|
|
exit(1)
|
|
except B:
|
|
exit(1)
|
|
exit(1)
|
|
|
|
try:
|
|
f1()
|
|
except KeyError:
|
|
print("PASS 04") |