rlib/test/test_rfile.py::TestFile::()::test_read_sequentially
self = <rpython.rlib.test.test_rfile.TestFile object at 0x0000020641d52838>
def test_read_sequentially(self):
fname = self.tmpdir.join('file_3')
fname.write("dupa")
fname = str(fname)
def f():
f = open(fname)
a = f.read(1)
b = f.read(1)
c = f.read(1)
d = f.read(1)
e = f.read()
f.close()
assert a == "d"
assert b == "u"
assert c == "p"
assert d == "a"
assert e == ""
f()
> self.interpret(f, [])
rlib\test\test_rfile.py:255:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rtyper\test\tool.py:16: in interpret
return interpret(fn, args, **kwds)
rtyper\test\test_llinterp.py:102: in interpret
result = interp.eval_graph(graph, values)
rtyper\llinterp.py:102: in eval_graph
retval = llframe.eval()
rtyper\llinterp.py:300: in eval
nextblock, args = self.eval_block(nextblock)
rtyper\llinterp.py:329: in eval_block
rstackovf.check_stack_overflow()
rtyper\llinterp.py:324: in eval_block
self.eval_operation(op)
rtyper\llinterp.py:427: in eval_operation
retval = ophandler(*vals)
rtyper\llinterp.py:702: in op_direct_call
return self.perform_call(f, FTYPE.ARGS, args)
rtyper\llinterp.py:698: in perform_call
return frame.eval()
rtyper\llinterp.py:300: in eval
nextblock, args = self.eval_block(nextblock)
rtyper\llinterp.py:329: in eval_block
rstackovf.check_stack_overflow()
rtyper\llinterp.py:324: in eval_block
self.eval_operation(op)
rtyper\llinterp.py:427: in eval_operation
retval = ophandler(*vals)
rtyper\llinterp.py:702: in op_direct_call
return self.perform_call(f, FTYPE.ARGS, args)
rtyper\llinterp.py:698: in perform_call
return frame.eval()
rtyper\llinterp.py:300: in eval
nextblock, args = self.eval_block(nextblock)
rtyper\llinterp.py:329: in eval_block
rstackovf.check_stack_overflow()
rtyper\llinterp.py:324: in eval_block
self.eval_operation(op)
rtyper\llinterp.py:427: in eval_operation
retval = ophandler(*vals)
rtyper\llinterp.py:702: in op_direct_call
return self.perform_call(f, FTYPE.ARGS, args)
rtyper\llinterp.py:698: in perform_call
return frame.eval()
rtyper\llinterp.py:300: in eval
nextblock, args = self.eval_block(nextblock)
rtyper\llinterp.py:329: in eval_block
rstackovf.check_stack_overflow()
rtyper\llinterp.py:324: in eval_block
self.eval_operation(op)
rtyper\llinterp.py:427: in eval_operation
retval = ophandler(*vals)
rtyper\llinterp.py:702: in op_direct_call
return self.perform_call(f, FTYPE.ARGS, args)
rtyper\llinterp.py:698: in perform_call
return frame.eval()
rtyper\llinterp.py:300: in eval
nextblock, args = self.eval_block(nextblock)
rtyper\llinterp.py:329: in eval_block
rstackovf.check_stack_overflow()
rtyper\llinterp.py:324: in eval_block
self.eval_operation(op)
rtyper\llinterp.py:427: in eval_operation
retval = ophandler(*vals)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <rpython.rtyper.llinterp.LLFrame object at 0x000002064059d328>, obj = 11
def op_gc_get_stats(self, obj):
> raise NotImplementedError("gc_get_stats")
E NotImplementedError: gc_get_stats
rtyper\llinterp.py:764: NotImplementedError
---------- Captured stderr call ----------
[platform:msg] Updated environment with vsver 160, using x64 True
[rtyper] specializing: 100 / 753 blocks (13%)
[rtyper] specializing: 200 / 753 blocks (26%)
[rtyper] specializing: 300 / 753 blocks (39%)
[rtyper] specializing: 400 / 753 blocks (53%)
[rtyper] specializing: 500 / 810 blocks (61%)
[rtyper] specializing: 600 / 810 blocks (74%)
[rtyper] specializing: 700 / 815 blocks (85%)
[rtyper] specializing: 800 / 817 blocks (97%)
[rtyper] -=- specialized 817 blocks -=-
[rtyper] -=- specialized 4 more blocks -=-
builder: rpython-win-x86-64 build #454+
test: rlib/test/test_rfile.py::TestFile::()::test_read_sequentially