[Python-checkins] r68348 - sandbox/trunk/io-c/test_io.py
antoine.pitrou
python-checkins at python.org
Mon Jan 5 21:31:22 CET 2009
Author: antoine.pitrou
Date: Mon Jan 5 21:31:22 2009
New Revision: 68348
Log:
Again more tests.
Modified:
sandbox/trunk/io-c/test_io.py
Modified: sandbox/trunk/io-c/test_io.py
==============================================================================
--- sandbox/trunk/io-c/test_io.py (original)
+++ sandbox/trunk/io-c/test_io.py Mon Jan 5 21:31:22 2009
@@ -20,8 +20,10 @@
def __init__(self, read_stack=()):
self._read_stack = list(read_stack)
self._write_stack = []
+ self._reads = 0
def read(self, n=None):
+ self._reads += 1
try:
return self._read_stack.pop(0)
except:
@@ -50,6 +52,7 @@
return 0 # same comment as above
def readinto(self, buf):
+ self._reads += 1
max_len = len(buf)
try:
data = self._read_stack[0]
@@ -443,9 +446,22 @@
def testRead(self):
rawio = MockRawIO((b"abc", b"d", b"efg"))
bufio = self.tp(rawio)
-
self.assertEquals(b"abcdef", bufio.read(6))
+ def testRead1(self):
+ rawio = MockRawIO((b"abc", b"d", b"efg"))
+ bufio = self.tp(rawio)
+ self.assertEquals(b"a", bufio.read(1))
+ self.assertEquals(b"b", bufio.read1(1))
+ self.assertEquals(rawio._reads, 1)
+ self.assertEquals(b"c", bufio.read1(100))
+ self.assertEquals(rawio._reads, 1)
+ self.assertEquals(b"d", bufio.read1(100))
+ self.assertEquals(rawio._reads, 2)
+ self.assertEquals(b"efg", bufio.read1(100))
+ self.assertEquals(rawio._reads, 3)
+ self.assertEquals(b"", bufio.read1(100))
+
def testBuffering(self):
data = b"abcdefghi"
dlen = len(data)
@@ -753,6 +769,35 @@
BufferedReaderTest.testThreads(self)
BufferedWriterTest.testThreads(self)
+ def testWritesAndPeeks(self):
+ def _peek(bufio):
+ bufio.peek(1)
+ self.check_writes(_peek)
+ def _peek(bufio):
+ pos = bufio.tell()
+ bufio.seek(-1, 1)
+ bufio.peek(1)
+ bufio.seek(pos, 0)
+ self.check_writes(_peek)
+
+ def testWritesAndReads(self):
+ def _read(bufio):
+ bufio.seek(-1, 1)
+ bufio.read(1)
+ self.check_writes(_read)
+
+ def testWritesAndRead1s(self):
+ def _read1(bufio):
+ bufio.seek(-1, 1)
+ bufio.read1(1)
+ self.check_writes(_read1)
+
+ def testWritesAndReadintos(self):
+ def _read(bufio):
+ bufio.seek(-1, 1)
+ bufio.readinto(bytearray(1))
+ self.check_writes(_read)
+
def testWritesAndSeeks(self):
def _seekabs(bufio):
pos = bufio.tell()
More information about the Python-checkins
mailing list