"""Tests for distutils.command.bdist_wininst.""" import sys import platform import unittest from test.support import run_unittest from .py38compat import check_warnings from distutils.command.bdist_wininst import bdist_wininst from distutils.tests import support @unittest.skipIf(sys.platform == 'win32' and platform.machine() == 'ARM64', 'bdist_wininst is not supported in this install') @unittest.skipIf(getattr(bdist_wininst, '_unsupported', False), 'bdist_wininst is not supported in this install') class BuildWinInstTestCase(support.TempdirManager, support.LoggingSilencer, unittest.TestCase): def test_get_exe_bytes(self): # issue5731: command was broken on non-windows platforms # this test makes sure it works now for every platform # let's create a command pkg_pth, dist = self.create_dist() with check_warnings(("", DeprecationWarning)): cmd = bdist_wininst(dist) cmd.ensure_finalized() # let's run the code that finds the right wininst*.exe file # and make sure it finds it and returns its content # no matter what platform we have exe_file = cmd.get_exe_bytes() self.assertGreater(len(exe_file), 10) def test_suite(): return unittest.TestLoader().loadTestsFromTestCase(BuildWinInstTestCase) if __name__ == '__main__': run_unittest(test_suite())