diff options
Diffstat (limited to 'setuptools')
-rw-r--r-- | setuptools/command/upload.py | 1 | ||||
-rw-r--r-- | setuptools/tests/test_upload.py | 21 |
2 files changed, 22 insertions, 0 deletions
diff --git a/setuptools/command/upload.py b/setuptools/command/upload.py index 1851ed28..99d86011 100644 --- a/setuptools/command/upload.py +++ b/setuptools/command/upload.py @@ -2,6 +2,7 @@ import io import os import hashlib import getpass +import platform from base64 import standard_b64encode diff --git a/setuptools/tests/test_upload.py b/setuptools/tests/test_upload.py index 3a1bbba9..7bf8e312 100644 --- a/setuptools/tests/test_upload.py +++ b/setuptools/tests/test_upload.py @@ -202,3 +202,24 @@ class TestUploadTest: # Read the 'signed' data that was transmitted entries = patched_upload.get_uploaded_metadata() assert entries['gpg_signature'] == 'signed-data' + + @pytest.mark.parametrize('bdist', ['bdist_rpm', 'bdist_dumb']) + @mock.patch('setuptools.command.upload.platform') + def test_bdist_rpm_upload(self, platform, bdist, patched_upload): + # Set the upload command to include bdist_rpm + cmd = patched_upload.cmd + dist_files = cmd.distribution.dist_files + dist_files = [(bdist,) + dist_files[0][1:]] + cmd.distribution.dist_files = dist_files + + # Mock out the platform commands to make this platform-independent + platform.dist.return_value = ('redhat', '', '') + + cmd.ensure_finalized() + cmd.run() + + entries = patched_upload.get_uploaded_metadata() + + assert entries['comment'].startswith(u'built for') + assert len(entries['comment']) > len(u'built for') + |