[Python-checkins] cpython (merge 3.3 -> default): Issue #18202: Fix minor bugs and cleanup test_source_encoding.py.

serhiy.storchaka python-checkins at python.org
Wed Jun 19 09:31:51 CEST 2013


http://hg.python.org/cpython/rev/959f4ce4d590
changeset:   84218:959f4ce4d590
parent:      84216:338be75f11c1
parent:      84217:410ea970866e
user:        Serhiy Storchaka <storchaka at gmail.com>
date:        Wed Jun 19 10:29:58 2013 +0300
summary:
  Issue #18202: Fix minor bugs and cleanup test_source_encoding.py.

files:
  Lib/test/test_source_encoding.py |  25 ++++++++++---------
  1 files changed, 13 insertions(+), 12 deletions(-)


diff --git a/Lib/test/test_source_encoding.py b/Lib/test/test_source_encoding.py
--- a/Lib/test/test_source_encoding.py
+++ b/Lib/test/test_source_encoding.py
@@ -94,31 +94,31 @@
 
     def test_exec_valid_coding(self):
         d = {}
-        exec('# coding: cp949\na = 5\n', d)
-        self.assertEqual(d['a'], 5)
+        exec(b'# coding: cp949\na = "\xaa\xa7"\n', d)
+        self.assertEqual(d['a'], '\u3047')
 
     def test_file_parse(self):
         # issue1134: all encodings outside latin-1 and utf-8 fail on
         # multiline strings and long lines (>512 columns)
         unload(TESTFN)
+        filename = TESTFN + ".py"
+        f = open(filename, "w", encoding="cp1252")
         sys.path.insert(0, os.curdir)
-        filename = TESTFN + ".py"
-        f = open(filename, "w")
         try:
-            f.write("# -*- coding: cp1252 -*-\n")
-            f.write("'''A short string\n")
-            f.write("'''\n")
-            f.write("'A very long string %s'\n" % ("X" * 1000))
-            f.close()
+            with f:
+                f.write("# -*- coding: cp1252 -*-\n")
+                f.write("'''A short string\n")
+                f.write("'''\n")
+                f.write("'A very long string %s'\n" % ("X" * 1000))
 
             importlib.invalidate_caches()
             __import__(TESTFN)
         finally:
-            f.close()
+            del sys.path[0]
             unlink(filename)
             unlink(filename + "c")
+            unlink(filename + "o")
             unload(TESTFN)
-            del sys.path[0]
 
     def test_error_from_string(self):
         # See http://bugs.python.org/issue6289
@@ -127,7 +127,8 @@
             compile(input, "<string>", "exec")
         expected = "'ascii' codec can't decode byte 0xe2 in position 16: " \
                    "ordinal not in range(128)"
-        self.assertTrue(c.exception.args[0].startswith(expected))
+        self.assertTrue(c.exception.args[0].startswith(expected),
+                        msg=c.exception.args[0])
 
 
 if __name__ == "__main__":

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list