| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  | """Tests for distutils.command.bdist_wininst.""" | 
					
						
							| 
									
										
										
										
											2019-06-12 10:16:49 -07:00
										 |  |  | import sys | 
					
						
							|  |  |  | import platform | 
					
						
							| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  | import unittest | 
					
						
							| 
									
										
										
										
											2019-07-05 10:44:12 +02:00
										 |  |  | from test.support import run_unittest, check_warnings | 
					
						
							| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | from distutils.command.bdist_wininst import bdist_wininst | 
					
						
							|  |  |  | from distutils.tests import support | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-12 10:16:49 -07:00
										 |  |  | @unittest.skipIf(sys.platform == 'win32' and platform.machine() == 'ARM64', | 
					
						
							|  |  |  |     'bdist_wininst is not supported in this install') | 
					
						
							| 
									
										
										
										
											2018-09-20 13:38:34 -07:00
										 |  |  | @unittest.skipIf(getattr(bdist_wininst, '_unsupported', False), | 
					
						
							|  |  |  |     'bdist_wininst is not supported in this install') | 
					
						
							| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  | class BuildWinInstTestCase(support.TempdirManager, | 
					
						
							| 
									
										
										
										
											2009-04-20 12:37:58 +00:00
										 |  |  |                            support.LoggingSilencer, | 
					
						
							| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  |                            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() | 
					
						
							| 
									
										
										
										
											2019-07-05 10:44:12 +02:00
										 |  |  |         with check_warnings(("", DeprecationWarning)): | 
					
						
							|  |  |  |             cmd = bdist_wininst(dist) | 
					
						
							| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  |         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() | 
					
						
							| 
									
										
										
										
											2013-11-17 00:17:46 +02:00
										 |  |  |         self.assertGreater(len(exe_file), 10) | 
					
						
							| 
									
										
										
										
											2009-04-09 22:02:39 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | def test_suite(): | 
					
						
							|  |  |  |     return unittest.makeSuite(BuildWinInstTestCase) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if __name__ == '__main__': | 
					
						
							| 
									
										
										
										
											2010-11-06 02:44:43 +00:00
										 |  |  |     run_unittest(test_suite()) |