[Python-checkins] r60373 - python/branches/release25-maint/Lib/test/test_resource.py

neal.norwitz python-checkins at python.org
Sun Jan 27 21:08:04 CET 2008


Author: neal.norwitz
Date: Sun Jan 27 21:08:04 2008
New Revision: 60373

Modified:
   python/branches/release25-maint/Lib/test/test_resource.py
Log:
Sync up with trunk.  Try to flush repeatedly to ensure the exception is raised.


Modified: python/branches/release25-maint/Lib/test/test_resource.py
==============================================================================
--- python/branches/release25-maint/Lib/test/test_resource.py	(original)
+++ python/branches/release25-maint/Lib/test/test_resource.py	Sun Jan 27 21:08:04 2008
@@ -1,7 +1,7 @@
 import os
 import resource
 
-from test.test_support import TESTFN
+from test.test_support import TESTFN, unlink
 
 # This test is checking a few specific problem spots.  RLIMIT_FSIZE
 # should be RLIM_INFINITY, which will be a really big number on a
@@ -38,17 +38,19 @@
         f.flush()
         # On some systems (e.g., Ubuntu on hppa) the flush()
         # doesn't always cause the exception, but the close()
-        # does eventually.  Try closing several times in an attempt
+        # does eventually.  Try flushing several times in an attempt
         # to ensure the file is really synced and the exception raised.
         for i in range(5):
-            f.close()
+            time.sleep(.1)
+            f.flush()
     except IOError:
         if not limit_set:
             raise
     f.close()
-    os.unlink(TESTFN)
 finally:
-    resource.setrlimit(resource.RLIMIT_FSIZE, (cur, max))
+    if limit_set:
+        resource.setrlimit(resource.RLIMIT_FSIZE, (cur, max))
+    unlink(TESTFN)
 
 # And be sure that setrlimit is checking for really large values
 too_big = 10L**50


More information about the Python-checkins mailing list