mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	 b344dd06c8
			
		
	
	
		b344dd06c8
		
	
	
	
	
		
			
			svn+ssh://pythondev@svn.python.org/python/branches/py3k The missing NEWS entries correspond to changes that were made before 3.1.3, but I think it’s not usual to edit entries of released versions, so I put them at the top. ........ r86236 | eric.araujo | 2010-11-06 03:44:43 +0100 (sam., 06 nov. 2010) | 2 lines Make sure each test can be run standalone (./python Lib/distutils/tests/x.py) ........ r86240 | eric.araujo | 2010-11-06 05:11:59 +0100 (sam., 06 nov. 2010) | 2 lines Prevent ResourceWarnings in test_gettext ........ r86332 | eric.araujo | 2010-11-08 19:15:17 +0100 (lun., 08 nov. 2010) | 4 lines Add missing NEWS entry for a fix committed by Senthil. All recent modifications to distutils should now be covered in NEWS. ........ r86340 | eric.araujo | 2010-11-08 22:48:23 +0100 (lun., 08 nov. 2010) | 2 lines This was actually fixed for the previous alpha. ........ r87271 | eric.araujo | 2010-12-15 20:09:58 +0100 (mer., 15 déc. 2010) | 2 lines Improve trace documentation (#9264). Patch by Eli Bendersky. ........ r87273 | eric.araujo | 2010-12-15 20:30:15 +0100 (mer., 15 déc. 2010) | 2 lines Use nested method directives, rewrap long lines, fix whitespace. ........ r87447 | eric.araujo | 2010-12-23 20:13:05 +0100 (jeu., 23 déc. 2010) | 2 lines Fix typo in superclass method name ........
		
			
				
	
	
		
			77 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| """Tests for distutils.command.install_data."""
 | |
| import sys
 | |
| import os
 | |
| import unittest
 | |
| import getpass
 | |
| 
 | |
| from distutils.command.install_data import install_data
 | |
| from distutils.tests import support
 | |
| from test.support import run_unittest
 | |
| 
 | |
| class InstallDataTestCase(support.TempdirManager,
 | |
|                           support.LoggingSilencer,
 | |
|                           support.EnvironGuard,
 | |
|                           unittest.TestCase):
 | |
| 
 | |
|     def test_simple_run(self):
 | |
|         pkg_dir, dist = self.create_dist()
 | |
|         cmd = install_data(dist)
 | |
|         cmd.install_dir = inst = os.path.join(pkg_dir, 'inst')
 | |
| 
 | |
|         # data_files can contain
 | |
|         #  - simple files
 | |
|         #  - a tuple with a path, and a list of file
 | |
|         one = os.path.join(pkg_dir, 'one')
 | |
|         self.write_file(one, 'xxx')
 | |
|         inst2 = os.path.join(pkg_dir, 'inst2')
 | |
|         two = os.path.join(pkg_dir, 'two')
 | |
|         self.write_file(two, 'xxx')
 | |
| 
 | |
|         cmd.data_files = [one, (inst2, [two])]
 | |
|         self.assertEqual(cmd.get_inputs(), [one, (inst2, [two])])
 | |
| 
 | |
|         # let's run the command
 | |
|         cmd.ensure_finalized()
 | |
|         cmd.run()
 | |
| 
 | |
|         # let's check the result
 | |
|         self.assertEqual(len(cmd.get_outputs()), 2)
 | |
|         rtwo = os.path.split(two)[-1]
 | |
|         self.assertTrue(os.path.exists(os.path.join(inst2, rtwo)))
 | |
|         rone = os.path.split(one)[-1]
 | |
|         self.assertTrue(os.path.exists(os.path.join(inst, rone)))
 | |
|         cmd.outfiles = []
 | |
| 
 | |
|         # let's try with warn_dir one
 | |
|         cmd.warn_dir = 1
 | |
|         cmd.ensure_finalized()
 | |
|         cmd.run()
 | |
| 
 | |
|         # let's check the result
 | |
|         self.assertEqual(len(cmd.get_outputs()), 2)
 | |
|         self.assertTrue(os.path.exists(os.path.join(inst2, rtwo)))
 | |
|         self.assertTrue(os.path.exists(os.path.join(inst, rone)))
 | |
|         cmd.outfiles = []
 | |
| 
 | |
|         # now using root and empty dir
 | |
|         cmd.root = os.path.join(pkg_dir, 'root')
 | |
|         inst3 = os.path.join(cmd.install_dir, 'inst3')
 | |
|         inst4 = os.path.join(pkg_dir, 'inst4')
 | |
|         three = os.path.join(cmd.install_dir, 'three')
 | |
|         self.write_file(three, 'xx')
 | |
|         cmd.data_files = [one, (inst2, [two]),
 | |
|                           ('inst3', [three]),
 | |
|                           (inst4, [])]
 | |
|         cmd.ensure_finalized()
 | |
|         cmd.run()
 | |
| 
 | |
|         # let's check the result
 | |
|         self.assertEqual(len(cmd.get_outputs()), 4)
 | |
|         self.assertTrue(os.path.exists(os.path.join(inst2, rtwo)))
 | |
|         self.assertTrue(os.path.exists(os.path.join(inst, rone)))
 | |
| 
 | |
| def test_suite():
 | |
|     return unittest.makeSuite(InstallDataTestCase)
 | |
| 
 | |
| if __name__ == "__main__":
 | |
|     run_unittest(test_suite())
 |