[Python-checkins] cpython: Make packaging’ upload command work with bdist_msi products (#13719)

eric.araujo python-checkins at python.org
Mon Mar 5 17:04:49 CET 2012


http://hg.python.org/cpython/rev/449c9fc2fc2d
changeset:   75438:449c9fc2fc2d
parent:      75430:e12a65da2358
user:        Éric Araujo <merwok at netwok.org>
date:        Mon Mar 05 17:04:07 2012 +0100
summary:
  Make packaging’ upload command work with bdist_msi products (#13719)

files:
  Lib/packaging/command/bdist_msi.py            |   2 +-
  Lib/packaging/tests/test_command_bdist_msi.py |  13 ++++++++-
  Misc/NEWS                                     |   3 +-
  3 files changed, 14 insertions(+), 4 deletions(-)


diff --git a/Lib/packaging/command/bdist_msi.py b/Lib/packaging/command/bdist_msi.py
--- a/Lib/packaging/command/bdist_msi.py
+++ b/Lib/packaging/command/bdist_msi.py
@@ -261,7 +261,7 @@
         self.db.Commit()
 
         if hasattr(self.distribution, 'dist_files'):
-            tup = 'bdist_msi', self.target_version or 'any', fullname
+            tup = 'bdist_msi', self.target_version or 'any', installer_name
             self.distribution.dist_files.append(tup)
 
         if not self.keep_temp:
diff --git a/Lib/packaging/tests/test_command_bdist_msi.py b/Lib/packaging/tests/test_command_bdist_msi.py
--- a/Lib/packaging/tests/test_command_bdist_msi.py
+++ b/Lib/packaging/tests/test_command_bdist_msi.py
@@ -1,20 +1,29 @@
 """Tests for distutils.command.bdist_msi."""
+import os
 import sys
 
 from packaging.tests import unittest, support
 
 
+ at unittest.skipUnless(sys.platform == 'win32', 'these tests require Windows')
 class BDistMSITestCase(support.TempdirManager,
                        support.LoggingCatcher,
                        unittest.TestCase):
 
-    @unittest.skipUnless(sys.platform == "win32", "runs only on win32")
     def test_minimal(self):
         # minimal test XXX need more tests
         from packaging.command.bdist_msi import bdist_msi
-        pkg_pth, dist = self.create_dist()
+        project_dir, dist = self.create_dist()
         cmd = bdist_msi(dist)
         cmd.ensure_finalized()
+        cmd.run()
+
+        bdists = os.listdir(os.path.join(project_dir, 'dist'))
+        self.assertEqual(bdists, ['foo-0.1.msi'])
+
+        # bug #13719: upload ignores bdist_msi files
+        self.assertEqual(dist.dist_files,
+                         [('bdist_msi', 'any', 'dist/foo-0.1.msi')])
 
 
 def test_suite():
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -13,7 +13,8 @@
 Library
 -------
 
-- Issue #13719: Make the distutils upload command aware of bdist_msi products.
+- Issue #13719: Make the distutils and packaging upload commands aware of
+  bdist_msi products.
 
 - Issue #14007: Accept incomplete TreeBuilder objects (missing start, end,
   data or close method) for the Python implementation as well.

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


More information about the Python-checkins mailing list