]> granicus.if.org Git - python/commitdiff
Exercise .readline() and .readlines(). More data is written to the
authorAndrew M. Kuchling <amk@amk.ca>
Sat, 29 Jul 2000 20:18:34 +0000 (20:18 +0000)
committerAndrew M. Kuchling <amk@amk.ca>
Sat, 29 Jul 2000 20:18:34 +0000 (20:18 +0000)
test file, too, so the methods have more work to do.

Lib/test/test_gzip.py

index 3ea2ba9bc3997c5a7050a59ce7ecd54ed0b05596..2366d0268d129916829f8ab768ad2c148e0dda68 100644 (file)
@@ -16,15 +16,39 @@ data2 = """/* zlibmodule.c -- gzip-compatible data compression */
 /* See http://www.winimage.com/zLibDll for Windows */
 """
 
-f = gzip.GzipFile(filename, 'wb') ; f.write(data1) ; f.close()
+f = gzip.GzipFile(filename, 'wb') ; f.write(data1 * 50) ; f.close()
 
 f = gzip.GzipFile(filename, 'rb') ; d = f.read() ; f.close()
-assert d == data1
+assert d == data1*50
 
 # Append to the previous file
-f = gzip.GzipFile(filename, 'ab') ; f.write(data2) ; f.close()
+f = gzip.GzipFile(filename, 'ab') ; f.write(data2 * 15) ; f.close()
 
 f = gzip.GzipFile(filename, 'rb') ; d = f.read() ; f.close()
-assert d == data1+data2
+assert d == (data1*50) + (data2*15)
+
+# Try .readline() with varying line lengths
+
+f = gzip.GzipFile(filename, 'rb')
+line_length = 0
+while 1:
+    L = f.readline( line_length )
+    if L == "" and line_length != 0: break
+    assert len(L) <= line_length
+    line_length = (line_length + 1) % 50
+f.close()
+
+# Try .readlines() 
+
+f = gzip.GzipFile(filename, 'rb')
+L = f.readlines()
+f.close()
+
+f = gzip.GzipFile(filename, 'rb')
+while 1:
+    L = f.readlines(150)
+    if L == []: break    
+f.close()
+
 
 os.unlink( filename )