mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	bpo-43105: Importlib now resolves relative paths when creating module spec objects from file locations (GH-25121)
This commit is contained in:
		
							parent
							
								
									2df971afd5
								
							
						
					
					
						commit
						0af99b44ed
					
				
					 9 changed files with 3034 additions and 2770 deletions
				
			
		|  | @ -498,7 +498,7 @@ class FactoryTests: | |||
| 
 | ||||
|     def setUp(self): | ||||
|         self.name = 'spam' | ||||
|         self.path = 'spam.py' | ||||
|         self.path = os.path.abspath('spam.py') | ||||
|         self.cached = self.util.cache_from_source(self.path) | ||||
|         self.loader = TestLoader() | ||||
|         self.fileloader = TestLoader(self.path) | ||||
|  | @ -637,7 +637,7 @@ def test_spec_from_loader_is_package_true_with_fileloader(self): | |||
|         self.assertEqual(spec.loader, self.fileloader) | ||||
|         self.assertEqual(spec.origin, self.path) | ||||
|         self.assertIs(spec.loader_state, None) | ||||
|         self.assertEqual(spec.submodule_search_locations, ['']) | ||||
|         self.assertEqual(spec.submodule_search_locations, [os.getcwd()]) | ||||
|         self.assertEqual(spec.cached, self.cached) | ||||
|         self.assertTrue(spec.has_location) | ||||
| 
 | ||||
|  | @ -736,7 +736,7 @@ def test_spec_from_file_location_smsl_empty(self): | |||
|         self.assertEqual(spec.loader, self.fileloader) | ||||
|         self.assertEqual(spec.origin, self.path) | ||||
|         self.assertIs(spec.loader_state, None) | ||||
|         self.assertEqual(spec.submodule_search_locations, ['']) | ||||
|         self.assertEqual(spec.submodule_search_locations, [os.getcwd()]) | ||||
|         self.assertEqual(spec.cached, self.cached) | ||||
|         self.assertTrue(spec.has_location) | ||||
| 
 | ||||
|  | @ -761,7 +761,7 @@ def test_spec_from_file_location_smsl_default(self): | |||
|         self.assertEqual(spec.loader, self.pkgloader) | ||||
|         self.assertEqual(spec.origin, self.path) | ||||
|         self.assertIs(spec.loader_state, None) | ||||
|         self.assertEqual(spec.submodule_search_locations, ['']) | ||||
|         self.assertEqual(spec.submodule_search_locations, [os.getcwd()]) | ||||
|         self.assertEqual(spec.cached, self.cached) | ||||
|         self.assertTrue(spec.has_location) | ||||
| 
 | ||||
|  | @ -809,6 +809,17 @@ def is_package(self, name): | |||
|         self.assertEqual(spec.cached, self.cached) | ||||
|         self.assertTrue(spec.has_location) | ||||
| 
 | ||||
|     def test_spec_from_file_location_relative_path(self): | ||||
|         spec = self.util.spec_from_file_location(self.name, | ||||
|             os.path.basename(self.path), loader=self.fileloader) | ||||
| 
 | ||||
|         self.assertEqual(spec.name, self.name) | ||||
|         self.assertEqual(spec.loader, self.fileloader) | ||||
|         self.assertEqual(spec.origin, self.path) | ||||
|         self.assertIs(spec.loader_state, None) | ||||
|         self.assertIs(spec.submodule_search_locations, None) | ||||
|         self.assertEqual(spec.cached, self.cached) | ||||
|         self.assertTrue(spec.has_location) | ||||
| 
 | ||||
| (Frozen_FactoryTests, | ||||
|  Source_FactoryTests | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Steve Dower
						Steve Dower