|
import py |
from py.__.code import safe_repr |
|
def test_simple_repr(): |
assert safe_repr._repr(1) == '1' |
assert safe_repr._repr(None) == 'None' |
|
class BrokenRepr: |
def __init__(self, ex): |
self.ex = ex |
foo = 0 |
def __repr__(self): |
raise self.ex |
|
def test_exception(): |
assert 'Exception' in safe_repr._repr(BrokenRepr(Exception("broken"))) |
|
class BrokenReprException(Exception): |
__str__ = None |
__repr__ = None |
|
def test_broken_exception(): |
assert 'Exception' in safe_repr._repr(BrokenRepr(BrokenReprException("really broken"))) |
|
def test_string_exception(): |
assert 'unknown' in safe_repr._repr(BrokenRepr("string")) |
|
def test_big_repr(): |
assert len(safe_repr._repr(range(1000))) <= \ |
len('[' + safe_repr.SafeRepr().maxlist * "1000" + ']') |
|
|
|
|