[Python-checkins] r72618 - in python/trunk/Lib/distutils: command/sdist.py tests/test_sdist.py

tarek.ziade python-checkins at python.org
Thu May 14 14:40:59 CEST 2009


Author: tarek.ziade
Date: Thu May 14 14:40:59 2009
New Revision: 72618

Log:
more test coverage for distutils sdist command

Modified:
   python/trunk/Lib/distutils/command/sdist.py
   python/trunk/Lib/distutils/tests/test_sdist.py

Modified: python/trunk/Lib/distutils/command/sdist.py
==============================================================================
--- python/trunk/Lib/distutils/command/sdist.py	(original)
+++ python/trunk/Lib/distutils/command/sdist.py	Thu May 14 14:40:59 2009
@@ -16,19 +16,18 @@
 from distutils import log
 from distutils.util import convert_path
 
-def show_formats ():
+def show_formats():
     """Print all possible values for the 'formats' option (used by
     the "--help-formats" command-line option).
     """
     from distutils.fancy_getopt import FancyGetopt
     from distutils.archive_util import ARCHIVE_FORMATS
-    formats=[]
+    formats = []
     for format in ARCHIVE_FORMATS.keys():
         formats.append(("formats=" + format, None,
                         ARCHIVE_FORMATS[format][2]))
     formats.sort()
-    pretty_printer = FancyGetopt(formats)
-    pretty_printer.print_help(
+    FancyGetopt(formats).print_help(
         "List of available source distribution formats:")
 
 class sdist (Command):

Modified: python/trunk/Lib/distutils/tests/test_sdist.py
==============================================================================
--- python/trunk/Lib/distutils/tests/test_sdist.py	(original)
+++ python/trunk/Lib/distutils/tests/test_sdist.py	Thu May 14 14:40:59 2009
@@ -7,12 +7,16 @@
 import sys
 import tempfile
 
+from test.test_support import captured_stdout
+
 from distutils.command.sdist import sdist
+from distutils.command.sdist import show_formats
 from distutils.core import Distribution
 from distutils.tests.test_config import PyPIRCCommandTestCase
 from distutils.errors import DistutilsExecError
 from distutils.spawn import find_executable
 from distutils.tests import support
+from distutils.archive_util import ARCHIVE_FORMATS
 
 SETUP_PY = """
 from distutils.core import setup
@@ -210,6 +214,16 @@
         manifest = open(join(self.tmp_dir, 'MANIFEST')).read()
         self.assertEquals(manifest, MANIFEST % {'sep': os.sep})
 
+    def test_show_formats(self):
+        with captured_stdout() as stdout:
+            show_formats()
+
+        # the output should be a header line + one line per format
+        num_formats = len(ARCHIVE_FORMATS.keys())
+        output = [line for line in stdout.getvalue().split('\n')
+                  if line.strip().startswith('--formats=')]
+        self.assertEquals(len(output), num_formats)
+
 def test_suite():
     return unittest.makeSuite(sdistTestCase)
 


More information about the Python-checkins mailing list