[Python-checkins] [2.7] bpo-33744: Fix test_uu. (GH-7350) (GH-7354)
Serhiy Storchaka
webhook-mailer at python.org
Sun Jun 3 12:31:56 EDT 2018
https://github.com/python/cpython/commit/9b5c9488c77aeaddeafa7e2302bdc87dd77ac084
commit: 9b5c9488c77aeaddeafa7e2302bdc87dd77ac084
branch: 2.7
author: Serhiy Storchaka <storchaka at gmail.com>
committer: GitHub <noreply at github.com>
date: 2018-06-03T19:31:53+03:00
summary:
[2.7] bpo-33744: Fix test_uu. (GH-7350) (GH-7354)
Separate tests leaked files or were depended on files leaked in other tests.
(cherry picked from commit 027f95c736457f12c5713d9cf5b95ac335e583df)
files:
M Lib/test/test_uu.py
diff --git a/Lib/test/test_uu.py b/Lib/test/test_uu.py
index 51a4fbeaf970..df41cbc12d40 100644
--- a/Lib/test/test_uu.py
+++ b/Lib/test/test_uu.py
@@ -4,9 +4,10 @@
"""
import unittest
-from test import test_support
+from test import test_support as support
-import sys, os, uu, cStringIO
+import cStringIO
+import sys
import uu
plaintext = "The smooth-scaled python crept over the sleeping dog\n"
@@ -108,114 +109,64 @@ def test_decode(self):
class UUFileTest(unittest.TestCase):
- def _kill(self, f):
- # close and remove file
- try:
- f.close()
- except (SystemExit, KeyboardInterrupt):
- raise
- except:
- pass
- try:
- os.unlink(f.name)
- except (SystemExit, KeyboardInterrupt):
- raise
- except:
- pass
-
def setUp(self):
- self.tmpin = test_support.TESTFN + "i"
- self.tmpout = test_support.TESTFN + "o"
-
- def tearDown(self):
- del self.tmpin
- del self.tmpout
+ self.tmpin = support.TESTFN + "i"
+ self.tmpout = support.TESTFN + "o"
+ self.addCleanup(support.unlink, self.tmpin)
+ self.addCleanup(support.unlink, self.tmpout)
def test_encode(self):
- fin = fout = None
- try:
- test_support.unlink(self.tmpin)
- fin = open(self.tmpin, 'wb')
+ with open(self.tmpin, 'wb') as fin:
fin.write(plaintext)
- fin.close()
- fin = open(self.tmpin, 'rb')
- fout = open(self.tmpout, 'w')
- uu.encode(fin, fout, self.tmpin, mode=0644)
- fin.close()
- fout.close()
+ with open(self.tmpin, 'rb') as fin:
+ with open(self.tmpout, 'w') as fout:
+ uu.encode(fin, fout, self.tmpin, mode=0o644)
- fout = open(self.tmpout, 'r')
+ with open(self.tmpout, 'r') as fout:
s = fout.read()
- fout.close()
- self.assertEqual(s, encodedtextwrapped % (0644, self.tmpin))
+ self.assertEqual(s, encodedtextwrapped % (0o644, self.tmpin))
- # in_file and out_file as filenames
- uu.encode(self.tmpin, self.tmpout, self.tmpin, mode=0644)
- fout = open(self.tmpout, 'r')
+ # in_file and out_file as filenames
+ uu.encode(self.tmpin, self.tmpout, self.tmpin, mode=0o644)
+ with open(self.tmpout, 'r') as fout:
s = fout.read()
- fout.close()
- self.assertEqual(s, encodedtextwrapped % (0644, self.tmpin))
-
- finally:
- self._kill(fin)
- self._kill(fout)
+ self.assertEqual(s, encodedtextwrapped % (0o644, self.tmpin))
def test_decode(self):
- f = None
- try:
- test_support.unlink(self.tmpin)
- f = open(self.tmpin, 'w')
- f.write(encodedtextwrapped % (0644, self.tmpout))
- f.close()
+ with open(self.tmpin, 'w') as f:
+ f.write(encodedtextwrapped % (0o644, self.tmpout))
- f = open(self.tmpin, 'r')
+ with open(self.tmpin, 'r') as f:
uu.decode(f)
- f.close()
- f = open(self.tmpout, 'r')
+ with open(self.tmpout, 'r') as f:
s = f.read()
- f.close()
- self.assertEqual(s, plaintext)
- # XXX is there an xp way to verify the mode?
- finally:
- self._kill(f)
+ self.assertEqual(s, plaintext)
+ # XXX is there an xp way to verify the mode?
def test_decode_filename(self):
- f = None
- try:
- test_support.unlink(self.tmpin)
- f = open(self.tmpin, 'w')
- f.write(encodedtextwrapped % (0644, self.tmpout))
- f.close()
+ with open(self.tmpin, 'w') as f:
+ f.write(encodedtextwrapped % (0o644, self.tmpout))
- uu.decode(self.tmpin)
+ uu.decode(self.tmpin)
- f = open(self.tmpout, 'r')
+ with open(self.tmpout, 'r') as f:
s = f.read()
- f.close()
- self.assertEqual(s, plaintext)
- finally:
- self._kill(f)
+ self.assertEqual(s, plaintext)
def test_decodetwice(self):
# Verify that decode() will refuse to overwrite an existing file
- f = None
- try:
- f = cStringIO.StringIO(encodedtextwrapped % (0644, self.tmpout))
-
- f = open(self.tmpin, 'r')
+ with open(self.tmpin, 'wb') as f:
+ f.write(encodedtextwrapped % (0o644, self.tmpout))
+ with open(self.tmpin, 'r') as f:
uu.decode(f)
- f.close()
- f = open(self.tmpin, 'r')
+ with open(self.tmpin, 'r') as f:
self.assertRaises(uu.Error, uu.decode, f)
- f.close()
- finally:
- self._kill(f)
def test_main():
- test_support.run_unittest(UUTest, UUStdIOTest, UUFileTest)
+ support.run_unittest(UUTest, UUStdIOTest, UUFileTest)
if __name__=="__main__":
test_main()
More information about the Python-checkins
mailing list