]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Make distutils’ upload command work with bdist_msi products (#13719).
authorÉric Araujo <merwok@netwok.org>
Mon, 5 Mar 2012 15:09:29 +0000 (16:09 +0100)
committerÉric Araujo <merwok@netwok.org>
Mon, 5 Mar 2012 15:09:29 +0000 (16:09 +0100)
Patch by Ralf Schmitt.

Lib/distutils/command/bdist_msi.py
Lib/distutils/tests/test_bdist_msi.py
Misc/NEWS

index b3cfe9ceff7640cf80684ce63e11bc15ab76e848..fde0f63fea233297a8bedf0f010bc575eb89aa36 100644 (file)
@@ -260,7 +260,7 @@ class bdist_msi(Command):
         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:
index 9308c79d916f128cffb166cbc419429639ebbdf2..9cbfb0c5c4ec73030616b23b3883115ce3749b26 100644 (file)
@@ -1,12 +1,11 @@
 """Tests for distutils.command.bdist_msi."""
-import unittest
 import sys
-
+import unittest
 from test.support import run_unittest
-
 from distutils.tests import support
 
-@unittest.skipUnless(sys.platform=="win32", "These tests are only for win32")
+
+@unittest.skipUnless(sys.platform == 'win32', 'these tests require Windows')
 class BDistMSITestCase(support.TempdirManager,
                        support.LoggingSilencer,
                        unittest.TestCase):
@@ -14,9 +13,18 @@ class BDistMSITestCase(support.TempdirManager,
     def test_minimal(self):
         # minimal test XXX need more tests
         from distutils.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():
     return unittest.makeSuite(BDistMSITestCase)
index cd0024e17a24cf36183cafdea97ce1e2fe34d0b5..250dd81fd9dd6172a4c9d19a0a5a5aaa5bb6eb91 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -130,6 +130,8 @@ Core and Builtins
 Library
 -------
 
+- Issue #13719: Make the distutils upload command aware of bdist_msi products.
+
 - Issue #14195: An issue that caused weakref.WeakSet instances to incorrectly
   return True for a WeakSet instance 'a' in both 'a < a' and 'a > a' has been
   fixed.