[Python-checkins] r69963 - python/branches/io-c/Lib/test/test_io.py

antoine.pitrou python-checkins at python.org
Wed Feb 25 16:42:59 CET 2009


Author: antoine.pitrou
Date: Wed Feb 25 16:42:59 2009
New Revision: 69963

Log:
Add a test of ABC inheritance



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

Modified: python/branches/io-c/Lib/test/test_io.py
==============================================================================
--- python/branches/io-c/Lib/test/test_io.py	(original)
+++ python/branches/io-c/Lib/test/test_io.py	Wed Feb 25 16:42:59 2009
@@ -2043,6 +2043,24 @@
         gc.collect()
         self.assert_(wr() is None, wr)
 
+    def test_abc_inheritance(self):
+        # Test implementations inherit (even virtually) from their respective ABCs
+        f = self.open(support.TESTFN, "wb", buffering=0)
+        self.assertTrue(isinstance(f, self.IOBase))
+        self.assertTrue(isinstance(f, self.RawIOBase))
+        self.assertFalse(isinstance(f, self.BufferedIOBase))
+        self.assertFalse(isinstance(f, self.TextIOBase))
+        f = self.open(support.TESTFN, "wb")
+        self.assertTrue(isinstance(f, self.IOBase))
+        self.assertFalse(isinstance(f, self.RawIOBase))
+        self.assertTrue(isinstance(f, self.BufferedIOBase))
+        self.assertFalse(isinstance(f, self.TextIOBase))
+        f = self.open(support.TESTFN, "w")
+        self.assertTrue(isinstance(f, self.IOBase))
+        self.assertFalse(isinstance(f, self.RawIOBase))
+        self.assertFalse(isinstance(f, self.BufferedIOBase))
+        self.assertTrue(isinstance(f, self.TextIOBase))
+
 class CMiscIOTest(MiscIOTest):
     io = io
 


More information about the Python-checkins mailing list