summaryrefslogtreecommitdiff
path: root/Lib/test/test_tempfile.py
diff options
context:
space:
mode:
authorNick Coghlan <ncoghlan@gmail.com>2008-02-11 12:53:42 +0000
committerNick Coghlan <ncoghlan@gmail.com>2008-02-11 12:53:42 +0000
commit5ca1cba2523645b6043adf5c59bb448b8d22d816 (patch)
tree20f3738823b386f8e5bb5f11a94b096231818f8d /Lib/test/test_tempfile.py
parent0b5c17a9c3055491b654bca482e3b1805610ac3d (diff)
downloadcpython-git-5ca1cba2523645b6043adf5c59bb448b8d22d816.tar.gz
Backport relevant part of issue 2021 fix (r60695): Support with statement properly in tempfile.NamedTemporaryFile
Diffstat (limited to 'Lib/test/test_tempfile.py')
-rw-r--r--Lib/test/test_tempfile.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/Lib/test/test_tempfile.py b/Lib/test/test_tempfile.py
index 2047a6364e..cd7ff4e1b5 100644
--- a/Lib/test/test_tempfile.py
+++ b/Lib/test/test_tempfile.py
@@ -1,5 +1,5 @@
# tempfile.py unit tests.
-
+from __future__ import with_statement
import tempfile
import os
import sys
@@ -298,7 +298,7 @@ class test__mkstemp_inner(TC):
# On Windows a spawn* /path/ with embedded spaces shouldn't be quoted,
# but an arg with embedded spaces should be decorated with double
# quotes on each end
- if sys.platform in ('win32'):
+ if sys.platform in ('win32',):
decorated = '"%s"' % sys.executable
tester = '"%s"' % tester
else:
@@ -601,7 +601,6 @@ class test_NamedTemporaryFile(TC):
def test_multiple_close(self):
# A NamedTemporaryFile can be closed many times without error
-
f = tempfile.NamedTemporaryFile()
f.write('abc\n')
f.close()
@@ -611,6 +610,16 @@ class test_NamedTemporaryFile(TC):
except:
self.failOnException("close")
+ def test_context_manager(self):
+ # A NamedTemporaryFile can be used as a context manager
+ with tempfile.NamedTemporaryFile() as f:
+ self.failUnless(os.path.exists(f.name))
+ self.failIf(os.path.exists(f.name))
+ def use_closed():
+ with f:
+ pass
+ self.failUnlessRaises(ValueError, use_closed)
+
# How to test the mode and bufsize parameters?
test_classes.append(test_NamedTemporaryFile)