cpython/Lib/test/test_StringIO.py

38 lines
874 B
Python
Raw Normal View History

2000-09-19 16:35:39 +00:00
# Tests StringIO and cStringIO
def do_test(module):
s = ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"+'\n')*5
2000-09-19 16:35:39 +00:00
f = module.StringIO(s)
print f.read(10)
print f.readline()
print len(f.readlines(60))
f = module.StringIO()
f.write('abcdef')
f.seek(3)
f.write('uvwxyz')
f.write('!')
print `f.getvalue()`
f.close()
f = module.StringIO()
f.write(s)
f.seek(10)
f.truncate()
print `f.getvalue()`
f.seek(0)
f.truncate(5)
print `f.getvalue()`
f.close()
try:
f.write("frobnitz")
except ValueError, e:
print "Caught expected ValueError writing to closed StringIO:"
print e
else:
print "Failed to catch ValueError writing to closed StringIO."
2000-09-19 16:35:39 +00:00
# Don't bother testing cStringIO without
import StringIO, cStringIO
do_test(StringIO)
do_test(cStringIO)