From ed93778e004a2c6c2160f54d7362f14c5797d9c6 Mon Sep 17 00:00:00 2001 From: Andrew Leech Date: Tue, 10 Mar 2020 15:14:35 +1100 Subject: [PATCH] py/objstringio: Expose tell() on StringIO and BytesIO objects. To match file objects. Fixes issue #5581. --- py/objstringio.c | 1 + tests/basics/io_stringio1.py | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/py/objstringio.c b/py/objstringio.c index 98808e3a9..176691387 100644 --- a/py/objstringio.c +++ b/py/objstringio.c @@ -228,6 +228,7 @@ STATIC const mp_rom_map_elem_t stringio_locals_dict_table[] = { { MP_ROM_QSTR(MP_QSTR_readline), MP_ROM_PTR(&mp_stream_unbuffered_readline_obj) }, { MP_ROM_QSTR(MP_QSTR_write), MP_ROM_PTR(&mp_stream_write_obj) }, { MP_ROM_QSTR(MP_QSTR_seek), MP_ROM_PTR(&mp_stream_seek_obj) }, + { MP_ROM_QSTR(MP_QSTR_tell), MP_ROM_PTR(&mp_stream_tell_obj) }, { MP_ROM_QSTR(MP_QSTR_flush), MP_ROM_PTR(&mp_stream_flush_obj) }, { MP_ROM_QSTR(MP_QSTR_close), MP_ROM_PTR(&mp_stream_close_obj) }, { MP_ROM_QSTR(MP_QSTR_getvalue), MP_ROM_PTR(&stringio_getvalue_obj) }, diff --git a/tests/basics/io_stringio1.py b/tests/basics/io_stringio1.py index 9f7c1e44e..41089f22d 100644 --- a/tests/basics/io_stringio1.py +++ b/tests/basics/io_stringio1.py @@ -33,6 +33,11 @@ a = io.StringIO() a.write("foo") print(a.read()) +a = io.StringIO() +print(a.tell()) +a.write("foo") +print(a.tell()) + a = io.StringIO() a.close() for f in [a.read, a.getvalue, lambda:a.write("")]: