Skip to content
Snippets Groups Projects
Commit c3c2c37f authored by Mike Wadsten's avatar Mike Wadsten Committed by Damien George
Browse files

tests/basics: Add tests for type-checking subclassed exc instances.

parent fe2bc92b
No related branches found
No related tags found
No related merge requests found
# test subclassing exceptions and providing __new__
class Dummy(BaseException):
pass
class GoodException(BaseException):
def __new__(cls, *args, **kwargs):
print("GoodException __new__")
return Dummy(*args, **kwargs)
class BadException(BaseException):
def __new__(cls, *args, **kwargs):
print("BadException __new__")
return 1
try:
raise GoodException("good message")
except BaseException as good:
print(type(good), good.args[0])
try:
raise BadException("bad message")
except Exception as bad:
# Should be TypeError 'exceptions must derive from BaseException'
print(type(bad), bad.args[0])
try:
def gen():
yield
gen().throw(BadException)
except Exception as genbad:
# Should be TypeError 'exceptions must derive from BaseException'
print(type(genbad), genbad.args[0])
GoodException __new__
<class 'Dummy'> good message
BadException __new__
<class 'TypeError'> exceptions must derive from BaseException
BadException __new__
<class 'TypeError'> exceptions must derive from BaseException
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment