def __init__(self, frame): self.filename = frame.code.raw.co_filename self.lineno = frame.lineno self.firstlineno = frame.code.firstlineno try: self.source = getsource(frame.code.raw) except IOError: self.source = "could not get to source"
def test_getsource___source__(): from py.__.code.source import getsource x = py.code.compile("""if 1: def x(): pass """) expected = """def x(): pass""" src = getsource(x) assert src == expected
def test_getsource_fallback(): from py.__.code.source import getsource expected = """def x(): pass""" src = getsource(x) assert src == expected
def test_idem_compile_and_getsource(): from py.__.code.source import getsource expected = "def x(): pass" co = py.code.compile(expected) src = getsource(co) assert src == expected