[Python-checkins] cpython: Clean up packaging.tests.test_mixin2to3

eric.araujo python-checkins at python.org
Fri Jun 17 19:41:34 CEST 2011


http://hg.python.org/cpython/rev/8e39e469bf22
changeset:   70845:8e39e469bf22
parent:      70821:fd6446a88fe3
user:        Éric Araujo <merwok at netwok.org>
date:        Thu Jun 16 23:21:01 2011 +0200
summary:
  Clean up packaging.tests.test_mixin2to3

files:
  Lib/packaging/tests/test_mixin2to3.py |  77 ++++++++------
  1 files changed, 43 insertions(+), 34 deletions(-)


diff --git a/Lib/packaging/tests/test_mixin2to3.py b/Lib/packaging/tests/test_mixin2to3.py
--- a/Lib/packaging/tests/test_mixin2to3.py
+++ b/Lib/packaging/tests/test_mixin2to3.py
@@ -1,5 +1,5 @@
-"""Tests for packaging.command.build_py."""
 import sys
+import textwrap
 
 from packaging.tests import unittest, support
 from packaging.compat import Mixin2to3
@@ -12,60 +12,69 @@
     @unittest.skipIf(sys.version < '2.6', 'requires Python 2.6 or higher')
     def test_convert_code_only(self):
         # used to check if code gets converted properly.
-        code_content = "print 'test'\n"
-        code_handle = self.mktempfile()
-        code_name = code_handle.name
+        code = "print 'test'"
 
-        code_handle.write(code_content)
-        code_handle.flush()
+        with self.mktempfile() as fp:
+            fp.write(code)
 
         mixin2to3 = Mixin2to3()
-        mixin2to3._run_2to3([code_name])
-        converted_code_content = "print('test')\n"
-        with open(code_name) as fp:
-            new_code_content = "".join(fp.readlines())
+        mixin2to3._run_2to3([fp.name])
+        expected = "print('test')"
 
-        self.assertEqual(new_code_content, converted_code_content)
+        with open(fp.name) as fp:
+            converted = fp.read()
+
+        self.assertEqual(expected, converted)
 
     @unittest.skipIf(sys.version < '2.6', 'requires Python 2.6 or higher')
     def test_doctests_only(self):
         # used to check if doctests gets converted properly.
-        doctest_content = '"""\n>>> print test\ntest\n"""\nprint test\n\n'
-        doctest_handle = self.mktempfile()
-        doctest_name = doctest_handle.name
+        doctest = textwrap.dedent('''\
+            """Example docstring.
 
-        doctest_handle.write(doctest_content)
-        doctest_handle.flush()
+            >>> print test
+            test
+
+            It works.
+            """''')
+
+        with self.mktempfile() as fp:
+            fp.write(doctest)
 
         mixin2to3 = Mixin2to3()
-        mixin2to3._run_2to3([doctest_name])
+        mixin2to3._run_2to3([fp.name])
+        expected = textwrap.dedent('''\
+            """Example docstring.
 
-        converted_doctest_content = ['"""', '>>> print(test)', 'test', '"""',
-                                     'print(test)', '', '', '']
-        converted_doctest_content = '\n'.join(converted_doctest_content)
-        with open(doctest_name) as fp:
-            new_doctest_content = "".join(fp.readlines())
+            >>> print(test)
+            test
 
-        self.assertEqual(new_doctest_content, converted_doctest_content)
+            It works.
+            """\n''')
+
+        with open(fp.name) as fp:
+            converted = fp.read()
+
+        self.assertEqual(expected, converted)
 
     @unittest.skipIf(sys.version < '2.6', 'requires Python 2.6 or higher')
     def test_additional_fixers(self):
         # used to check if use_2to3_fixers works
-        code_content = "type(x) is T"
-        code_handle = self.mktempfile()
-        code_name = code_handle.name
+        code = 'type(x) is not T'
 
-        code_handle.write(code_content)
-        code_handle.flush()
+        with self.mktempfile() as fp:
+            fp.write(code)
 
         mixin2to3 = Mixin2to3()
+        mixin2to3._run_2to3(files=[fp.name], doctests=[fp.name],
+                            fixers=['packaging.tests.fixer'])
 
-        mixin2to3._run_2to3(files=[code_name], doctests=[code_name],
-                            fixers=['packaging.tests.fixer'])
-        converted_code_content = "isinstance(x, T)"
-        with open(code_name) as fp:
-            new_code_content = "".join(fp.readlines())
-        self.assertEqual(new_code_content, converted_code_content)
+        expected = 'not isinstance(x, T)'
+
+        with open(fp.name) as fp:
+            converted = fp.read()
+
+        self.assertEqual(expected, converted)
 
 
 def test_suite():

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


More information about the Python-checkins mailing list