mirror of
https://github.com/python/cpython.git
synced 2025-08-21 17:25:34 +00:00
Sync up with trunk. Try to flush repeatedly to ensure the exception is raised.
This commit is contained in:
parent
0b11c5fdf6
commit
209ea39d31
1 changed files with 7 additions and 5 deletions
|
@ -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 @@ try:
|
|||
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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue