diff options
Diffstat (limited to 'tests/basics/io_stringio1.py')
-rw-r--r-- | tests/basics/io_stringio1.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/basics/io_stringio1.py b/tests/basics/io_stringio1.py new file mode 100644 index 000000000..9f7c1e44e --- /dev/null +++ b/tests/basics/io_stringio1.py @@ -0,0 +1,45 @@ +try: + import uio as io +except ImportError: + import io + +a = io.StringIO() +print('io.StringIO' in repr(a)) +print(a.getvalue()) +print(a.read()) + +a = io.StringIO("foobar") +print(a.getvalue()) +print(a.read()) +print(a.read()) + +a = io.StringIO() +a.write("foo") +print(a.getvalue()) + +a = io.StringIO("foo") +a.write("12") +print(a.getvalue()) + +a = io.StringIO("foo") +a.write("123") +print(a.getvalue()) + +a = io.StringIO("foo") +a.write("1234") +print(a.getvalue()) + +a = io.StringIO() +a.write("foo") +print(a.read()) + +a = io.StringIO() +a.close() +for f in [a.read, a.getvalue, lambda:a.write("")]: + # CPython throws for operations on closed I/O, MicroPython makes + # the underlying string empty unless MICROPY_CPYTHON_COMPAT defined + try: + f() + print("ValueError") + except ValueError: + print("ValueError") |