[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

AltStyle によって変換されたページ (->オリジナル) /