]> granicus.if.org Git - python/commitdiff
Merged revisions 72618 via svnmerge from
authorTarek Ziadé <ziade.tarek@gmail.com>
Thu, 14 May 2009 12:45:48 +0000 (12:45 +0000)
committerTarek Ziadé <ziade.tarek@gmail.com>
Thu, 14 May 2009 12:45:48 +0000 (12:45 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72618 | tarek.ziade | 2009-05-14 14:40:59 +0200 (Thu, 14 May 2009) | 1 line

  more test coverage for distutils sdist command
........

Lib/distutils/command/sdist.py
Lib/distutils/tests/test_sdist.py

index 1a64d0e3c13fa33b696658a1cfabfbf3660b5210..836b962059d0a377f0b7487417a8fe586df82993 100644 (file)
@@ -17,19 +17,18 @@ from distutils.filelist import FileList
 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):
index 8af080f95027d53177672bebb96461d89440f849..ec95ffb3aa7d500dc27f577bfaff2e31e183c736 100644 (file)
@@ -7,12 +7,16 @@ from os.path import join
 import sys
 import tempfile
 
+from 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 @@ class sdistTestCase(PyPIRCCommandTestCase):
         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)