[Python-3000-checkins] r54787 - python/branches/p3yk/Lib/test/test_fileio.py

guido.van.rossum python-3000-checkins at python.org
Thu Apr 12 16:51:54 CEST 2007


Author: guido.van.rossum
Date: Thu Apr 12 16:51:49 2007
New Revision: 54787

Modified:
   python/branches/p3yk/Lib/test/test_fileio.py
Log:
Test closed, mode attribute; don't test __exit__().


Modified: python/branches/p3yk/Lib/test/test_fileio.py
==============================================================================
--- python/branches/p3yk/Lib/test/test_fileio.py	(original)
+++ python/branches/p3yk/Lib/test/test_fileio.py	Thu Apr 12 16:51:49 2007
@@ -48,14 +48,14 @@
     def testAttributes(self):
         # verify expected attributes exist
         f = self.f
-        # XXX do we want these?
-        #f.name     # merely shouldn't blow up
-        #f.mode     # ditto
-        #f.closed   # ditto
-
-        # verify the others aren't
-        for attr in 'name', 'mode', 'closed':
-            self.assertRaises((AttributeError, TypeError), setattr, f, attr, 'oops')
+
+        self.assertEquals(f.mode, "w")
+        self.assertEquals(f.closed, False)
+
+        # verify the attributes are readonly
+        for attr in 'mode', 'closed':
+            self.assertRaises((AttributeError, TypeError),
+                              setattr, f, attr, 'oops')
 
     def testReadinto(self):
         # verify readinto
@@ -74,12 +74,16 @@
     def testErrors(self):
         f = self.f
         self.assert_(not f.isatty())
-        #self.assert_(not f.closed) # XXX Do we want to support these?
+        self.assert_(not f.closed)
         #self.assertEquals(f.name, TESTFN)
-
+        self.assertRaises(ValueError, f.read, 10) # Open for reading
+        f.close()
+        self.assert_(f.closed)
+        f = _fileio._FileIO(TESTFN, 'r')
         self.assertRaises(TypeError, f.readinto, "")
+        self.assert_(not f.closed)
         f.close()
-        #self.assert_(f.closed) # XXX
+        self.assert_(f.closed)
 
     def testMethods(self):
         methods = ['fileno', 'isatty', 'read', 'readinto',
@@ -88,23 +92,14 @@
         if sys.platform.startswith('atheos'):
             methods.remove('truncate')
 
-        # __exit__ should close the file
-        self.f.__exit__(None, None, None)
-        #self.assert_(self.f.closed) # XXX
+        self.f.close()
+        self.assert_(self.f.closed)
 
         for methodname in methods:
             method = getattr(self.f, methodname)
             # should raise on closed file
             self.assertRaises(ValueError, method)
 
-        # file is closed, __exit__ shouldn't do anything
-        self.assertEquals(self.f.__exit__(None, None, None), None)
-        # it must also return None if an exception was given
-        try:
-            1/0
-        except:
-            self.assertEquals(self.f.__exit__(*sys.exc_info()), None)
-
 
 class OtherFileTests(unittest.TestCase):
 


More information about the Python-3000-checkins mailing list