]> granicus.if.org Git - python/commitdiff
Additional tests for seek() method, written by Trent Mick
authorAndrew M. Kuchling <amk@amk.ca>
Sun, 18 Jun 2000 04:47:08 +0000 (04:47 +0000)
committerAndrew M. Kuchling <amk@amk.ca>
Sun, 18 Jun 2000 04:47:08 +0000 (04:47 +0000)
Lib/test/output/test_mmap
Lib/test/test_mmap.py

index f3efcd06966dc024a1f97b4c8dfcd5377bd002ba..0e880e38cdf27398f248e705ef8d7f298bb07d11 100644 (file)
Binary files a/Lib/test/output/test_mmap and b/Lib/test/output/test_mmap differ
index e5da187e0c73c65b7bf30947962360985f59e56d..c3cafca8341a495ebb9bdfd5f056271705f423d2 100644 (file)
@@ -58,7 +58,42 @@ def test_both():
         
         assert start == PAGESIZE
         assert end == PAGESIZE + 6
-        
+
+    # test seeking around (try to overflow the seek implementation)
+    m.seek(0,0)
+    print '  Seek to zeroth byte'
+    assert m.tell() == 0
+    m.seek(42,1)
+    print '  Seek to 42nd byte'
+    assert m.tell() == 42
+    m.seek(0,2)
+    print '  Seek to last byte'
+    assert m.tell() == len(m)
+       
+    print '  Try to seek to negative position...'
+    try:
+        m.seek(-1)
+    except ValueError:
+        pass
+    else:
+        assert 0, 'expected a ValueError but did not get it'
+
+    print '  Try to seek beyond end of mmap...'
+    try:
+        m.seek(1,2)
+    except ValueError:
+        pass
+    else:
+        assert 0, 'expected a ValueError but did not get it'
+
+    print '  Try to seek to negative position...'
+    try:
+        m.seek(-len(m)-1,2)
+    except ValueError:
+        pass
+    else:
+        assert 0, 'expected a ValueError but did not get it'
+
     m.close()
     os.unlink("foo")
     print ' Test passed'