def test_truncate(): f = RStringIO() f.truncate(20) assert f.getvalue() == '' assert f.tell() == 0 f.write('\x00' * 25) f.seek(12) f.truncate(20) assert f.getvalue() == '\x00' * 20 assert f.tell() == 20 f.write('more') f.truncate(20) assert f.getvalue() == '\x00' * 20 assert f.tell() == 20 f.write('hello') f.write(' world') f.truncate(30) assert f.getvalue() == '\x00' * 20 + 'hello worl' f.truncate(25) assert f.getvalue() == '\x00' * 20 + 'hello' f.write('baz') f.write('egg') f.truncate(3) assert f.getvalue() == '\x00' * 3 assert f.tell() == 3
def test_truncate_end(): f = RStringIO() f.write("abc") f.seek(0) f.truncate(0) assert f.getvalue() == ""