swig/Examples/python/exception/runme.py
William S Fulton 89bee6a7fa Modify examples to be both Python 2 and 3 compatible
For removing dependency on 2to3
2020-08-15 16:46:01 +01:00

42 lines
792 B
Python

# file: runme.py
# Throw a lot of exceptions
import example
t = example.Test()
try:
t.unknown()
except RuntimeError as e:
print("incomplete type %s" % e.args[0])
try:
t.simple()
except RuntimeError as e:
print(e.args[0])
try:
t.message()
except RuntimeError as e:
print(e.args[0])
if not example.is_python_builtin():
try:
t.hosed()
except example.Exc as e:
print("%s %s" % (e.code, e.msg))
else:
try:
t.hosed()
except BaseException as e:
# Throwing builtin classes as exceptions not supported (-builtin
# option)
print(e)
for i in range(1, 4):
try:
t.multi(i)
except RuntimeError as e:
print(e.args[0])
except example.Exc as e:
print("%s %s" % (e.code, e.msg))