[Python-checkins] r69891 - python/branches/io-c/Lib/test/test_univnewlines.py

benjamin.peterson python-checkins at python.org
Mon Feb 23 00:27:24 CET 2009


Author: benjamin.peterson
Date: Mon Feb 23 00:27:24 2009
New Revision: 69891

Log:
convert another test to test both io implementations

Modified:
   python/branches/io-c/Lib/test/test_univnewlines.py

Modified: python/branches/io-c/Lib/test/test_univnewlines.py
==============================================================================
--- python/branches/io-c/Lib/test/test_univnewlines.py	(original)
+++ python/branches/io-c/Lib/test/test_univnewlines.py	Mon Feb 23 00:27:24 2009
@@ -1,4 +1,6 @@
 # Tests universal newline support for both reading and parsing files.
+import io
+import _pyio as pyio
 import unittest
 import os
 import sys
@@ -35,7 +37,7 @@
     WRITEMODE = 'wb'
 
     def setUp(self):
-        fp = open(support.TESTFN, self.WRITEMODE)
+        fp = self.open(support.TESTFN, self.WRITEMODE)
         data = self.DATA
         if "b" in self.WRITEMODE:
             data = data.encode("ascii")
@@ -49,19 +51,19 @@
             pass
 
     def test_read(self):
-        fp = open(support.TESTFN, self.READMODE)
+        fp = self.open(support.TESTFN, self.READMODE)
         data = fp.read()
         self.assertEqual(data, DATA_LF)
         self.assertEqual(repr(fp.newlines), repr(self.NEWLINE))
 
     def test_readlines(self):
-        fp = open(support.TESTFN, self.READMODE)
+        fp = self.open(support.TESTFN, self.READMODE)
         data = fp.readlines()
         self.assertEqual(data, DATA_SPLIT)
         self.assertEqual(repr(fp.newlines), repr(self.NEWLINE))
 
     def test_readline(self):
-        fp = open(support.TESTFN, self.READMODE)
+        fp = self.open(support.TESTFN, self.READMODE)
         data = []
         d = fp.readline()
         while d:
@@ -71,7 +73,7 @@
         self.assertEqual(repr(fp.newlines), repr(self.NEWLINE))
 
     def test_seek(self):
-        fp = open(support.TESTFN, self.READMODE)
+        fp = self.open(support.TESTFN, self.READMODE)
         fp.readline()
         pos = fp.tell()
         data = fp.readlines()
@@ -94,7 +96,7 @@
     DATA = DATA_CRLF
 
     def test_tell(self):
-        fp = open(support.TESTFN, self.READMODE)
+        fp = self.open(support.TESTFN, self.READMODE)
         self.assertEqual(repr(fp.newlines), repr(None))
         data = fp.readline()
         pos = fp.tell()
@@ -106,12 +108,22 @@
 
 
 def test_main():
-    support.run_unittest(
-        TestCRNewlines,
-        TestLFNewlines,
-        TestCRLFNewlines,
-        TestMixedNewlines
-     )
+    base_tests = (TestCRNewlines,
+                  TestLFNewlines,
+                  TestCRLFNewlines,
+                  TestMixedNewlines)
+    tests = []
+    # Test the C and Python implementations.
+    for test in base_tests:
+        class CTest(test):
+            open = io.open
+        CTest.__name__ = "C" + test.__name__
+        class PyTest(test):
+            open = staticmethod(pyio.open)
+        PyTest.__name__ = "Py" + test.__name__
+        tests.append(CTest)
+        tests.append(PyTest)
+    support.run_unittest(*tests)
 
 if __name__ == '__main__':
     test_main()


More information about the Python-checkins mailing list