diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2013-06-19 07:23:35 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2013-06-19 07:23:35 (GMT) |
commit | 0a3cdf063c10308d189609f1e66bcbbc5013a233 (patch) | |
tree | 58f6bdb6995ef82b70181cb253132406fb34ea27 | |
parent | 2f13f546e647214bbe70d88494c59fbe44d1a40d (diff) | |
download | cpython-0a3cdf063c10308d189609f1e66bcbbc5013a233.zip cpython-0a3cdf063c10308d189609f1e66bcbbc5013a233.tar.gz cpython-0a3cdf063c10308d189609f1e66bcbbc5013a233.tar.bz2 |
Issue #18202: Fix minor bugs and cleanup test_coding.py.
-rw-r--r-- | Lib/test/test_coding.py | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/Lib/test/test_coding.py b/Lib/test/test_coding.py index dfd5431..989c7a8 100644 --- a/Lib/test/test_coding.py +++ b/Lib/test/test_coding.py @@ -1,4 +1,4 @@ -import test.support, unittest +import unittest from test.support import TESTFN, unlink, unload import importlib, os, sys @@ -22,31 +22,31 @@ class CodingTest(unittest.TestCase): 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) - sys.path.insert(0, os.curdir) filename = TESTFN + ".py" - f = open(filename, "w") + f = open(filename, "w", encoding="cp1252") + sys.path.insert(0, os.curdir) 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 @@ -55,11 +55,9 @@ class CodingTest(unittest.TestCase): 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]) -def test_main(): - test.support.run_unittest(CodingTest) if __name__ == "__main__": - test_main() + unittest.main() |