summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorMarc-André Lemburg <mal@egenix.com>2000-08-25 22:37:31 (GMT)
committerMarc-André Lemburg <mal@egenix.com>2000-08-25 22:37:31 (GMT)
commitfa44d794bd95e6881399e6f6f8ee976c865dd5d4 (patch)
tree1d949d3bbc2e1889420537115928fbb49c1807d9 /Lib
parentab0280d252fa64d7027d36868989a923a7fcf218 (diff)
downloadcpython-fa44d794bd95e6881399e6f6f8ee976c865dd5d4.zip
cpython-fa44d794bd95e6881399e6f6f8ee976c865dd5d4.tar.gz
cpython-fa44d794bd95e6881399e6f6f8ee976c865dd5d4.tar.bz2
New test suite for file objects by Jeremy Hilton. This will need
to be extended somewhat -- right now it only tests the .writelines() method.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_file.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/Lib/test/test_file.py b/Lib/test/test_file.py
new file mode 100644
index 0000000..4ad5c95
--- /dev/null
+++ b/Lib/test/test_file.py
@@ -0,0 +1,45 @@
+from test_support import TESTFN
+from UserList import UserList
+
+# verify writelines with instance sequence
+l = UserList(['1', '2'])
+f = open(TESTFN, 'wb')
+f.writelines(l)
+f.close()
+f = open(TESTFN, 'rb')
+buf = f.read()
+f.close()
+assert buf == '12'
+
+# verify writelines with integers
+f = open(TESTFN, 'wb')
+try:
+ f.writelines([1, 2, 3])
+except TypeError:
+ pass
+else:
+ print "writelines accepted sequence of integers"
+f.close()
+
+# verify writelines with integers in UserList
+f = open(TESTFN, 'wb')
+l = UserList([1,2,3])
+try:
+ f.writelines(l)
+except TypeError:
+ pass
+else:
+ print "writelines accepted sequence of integers"
+f.close()
+
+# verify writelines with non-string object
+class NonString: pass
+
+f = open(TESTFN, 'wb')
+try:
+ f.writelines([NonString(), NonString()])
+except TypeError:
+ pass
+else:
+ print "writelines accepted sequence of non-string objects"
+f.close()