[Python-checkins] cpython (3.2): Rework test_record a bit to make the test more exact

georg.brandl python-checkins at python.org
Sun Sep 4 08:42:41 CEST 2011


http://hg.python.org/cpython/rev/09873d803c1e
changeset:   72255:09873d803c1e
branch:      3.2
user:        Éric Araujo <merwok at netwok.org>
date:        Sat Aug 20 07:00:41 2011 +0200
summary:
  Rework test_record a bit to make the test more exact

files:
  Lib/distutils/tests/test_install.py |  24 +++++++++-------
  1 files changed, 13 insertions(+), 11 deletions(-)


diff --git a/Lib/distutils/tests/test_install.py b/Lib/distutils/tests/test_install.py
--- a/Lib/distutils/tests/test_install.py
+++ b/Lib/distutils/tests/test_install.py
@@ -1,7 +1,6 @@
 """Tests for distutils.command.install."""
 
 import os
-import os.path
 import sys
 import unittest
 import site
@@ -167,33 +166,36 @@
         self.assertRaises(DistutilsOptionError, cmd.finalize_options)
 
     def test_record(self):
+        install_dir = self.mkdtemp()
+        project_dir, dist = self.create_dist(scripts=['hello'])
+        self.addCleanup(os.chdir, os.getcwd())
+        os.chdir(project_dir)
+        self.write_file('hello', "print('o hai')")
 
-        install_dir = self.mkdtemp()
-        pkgdir, dist = self.create_dist()
-
-        dist = Distribution()
         cmd = install(dist)
         dist.command_obj['install'] = cmd
         cmd.root = install_dir
-        cmd.record = os.path.join(pkgdir, 'RECORD')
+        cmd.record = os.path.join(project_dir, 'RECORD')
         cmd.ensure_finalized()
-
         cmd.run()
 
-        # let's check the RECORD file was created with one
-        # line (the egg info file)
         f = open(cmd.record)
         try:
-            self.assertEqual(len(f.readlines()), 1)
+            content = f.read()
         finally:
             f.close()
 
+        found = [os.path.basename(line) for line in content.splitlines()]
+        expected = ['hello',
+                    'UNKNOWN-0.0.0-py%s.%s.egg-info' % sys.version_info[:2]]
+        self.assertEqual(found, expected)
+
     def test_debug_mode(self):
         # this covers the code called when DEBUG is set
         old_logs_len = len(self.logs)
         install_module.DEBUG = True
         try:
-            with captured_stdout() as stdout:
+            with captured_stdout():
                 self.test_record()
         finally:
             install_module.DEBUG = False

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


More information about the Python-checkins mailing list