python (3.12.0)
1 from test.test_importlib import abc, util
2
3 machinery = util.import_importlib('importlib.machinery')
4
5 import sys
6 import unittest
7 import warnings
8
9
10 @unittest.skipIf(util.BUILTINS.good_name is None, 'no reasonable builtin module')
11 class ESC[4;38;5;81mFindSpecTests(ESC[4;38;5;149mabcESC[4;38;5;149m.ESC[4;38;5;149mFinderTests):
12
13 """Test find_spec() for built-in modules."""
14
15 def test_module(self):
16 # Common case.
17 with util.uncache(util.BUILTINS.good_name):
18 found = self.machinery.BuiltinImporter.find_spec(util.BUILTINS.good_name)
19 self.assertTrue(found)
20 self.assertEqual(found.origin, 'built-in')
21
22 # Built-in modules cannot be a package.
23 test_package = None
24
25 # Built-in modules cannot be in a package.
26 test_module_in_package = None
27
28 # Built-in modules cannot be a package.
29 test_package_in_package = None
30
31 # Built-in modules cannot be a package.
32 test_package_over_module = None
33
34 def test_failure(self):
35 name = 'importlib'
36 assert name not in sys.builtin_module_names
37 spec = self.machinery.BuiltinImporter.find_spec(name)
38 self.assertIsNone(spec)
39
40
41 (Frozen_FindSpecTests,
42 Source_FindSpecTests
43 ) = util.test_both(FindSpecTests, machinery=machinery)
44
45
46 if __name__ == '__main__':
47 unittest.main()