[Python-checkins] r56445 - python/branches/cpy_merge/Lib/test/test_memoryio.py
alexandre.vassalotti
python-checkins at python.org
Wed Jul 18 22:22:55 CEST 2007
Author: alexandre.vassalotti
Date: Wed Jul 18 22:22:55 2007
New Revision: 56445
Modified:
python/branches/cpy_merge/Lib/test/test_memoryio.py
Log:
Test if getvalue() result is constant after a read().
Test the flush method.
Test subclassing support.
Test if over-seeking with BytesIO inserts null-bytes.
Modified: python/branches/cpy_merge/Lib/test/test_memoryio.py
==============================================================================
--- python/branches/cpy_merge/Lib/test/test_memoryio.py (original)
+++ python/branches/cpy_merge/Lib/test/test_memoryio.py Wed Jul 18 22:22:55 2007
@@ -147,6 +147,8 @@
memio = self.ioclass(buf)
self.assertEqual(memio.getvalue(), buf)
+ memio.read()
+ self.assertEqual(memio.getvalue(), buf)
memio = self.ioclass(buf * 1000)
self.assertEqual(memio.getvalue()[-3:], "890")
memio.close()
@@ -169,14 +171,22 @@
buf = self.buftype("1234567890")
memio = self.ioclass(buf)
- self.assertEqual(0, memio.tell())
+ self.assertEqual(memio.tell(), 0)
memio.seek(5)
- self.assertEqual(5, memio.tell())
+ self.assertEqual(memio.tell(), 5)
memio.seek(10000)
- self.assertEqual(10000, memio.tell())
+ self.assertEqual(memio.tell(), 10000)
memio.close()
self.assertRaises(ValueError, memio.tell)
+ def test_flush(self):
+ buf = self.buftype("1234567890")
+ memio = self.ioclass(buf)
+
+ self.assertEqual(memio.flush(), None)
+ memio.close()
+ self.assertRaises(ValueError, memio.flush)
+
def test_flags(self):
memio = self.ioclass()
@@ -192,6 +202,15 @@
self.assertRaises(ValueError, memio.isatty)
self.assertEqual(memio.closed, True)
+ def test_subclassing(self):
+ buf = self.buftype("1234567890")
+ def test():
+ class MemIO(self.ioclass):
+ pass
+ m = MemIO(buf)
+ return m.getvalue()
+ self.assertEqual(test(), buf)
+
class PyBytesIOTest(MemoryTestMixin, unittest.TestCase):
buftype = bytes
@@ -220,6 +239,14 @@
memio.close()
self.assertRaises(ValueError, memio.readinto, b)
+ def test_overseek(self):
+ buf = self.buftype("1234567890")
+ memio = self.ioclass()
+
+ memio.seek(2)
+ memio.write(buf)
+ self.assertEqual(memio.getvalue(), '\0\0' + buf)
+
class PyStringIOTest(MemoryTestMixin, unittest.TestCase):
buftype = unicode
More information about the Python-checkins
mailing list