mirror of
https://github.com/python/cpython.git
synced 2025-07-23 19:25:40 +00:00

- Add requires_fork and requires_subprocess to more tests - Skip extension import tests if dlopen is not available - Don't assume that _testcapi is a shared extension - Skip a lot of socket tests that don't work on Emscripten - Skip mmap tests, mmap emulation is incomplete - venv does not work yet - Cannot get libc from executable The "entire" test suite is now passing on Emscripten with EMSDK from git head (91 suites are skipped).
46 lines
1.3 KiB
Python
46 lines
1.3 KiB
Python
from test.test_importlib import abc, util
|
|
|
|
machinery = util.import_importlib('importlib.machinery')
|
|
|
|
import unittest
|
|
import warnings
|
|
|
|
|
|
class FinderTests(abc.FinderTests):
|
|
|
|
"""Test the finder for extension modules."""
|
|
|
|
def setUp(self):
|
|
if not self.machinery.EXTENSION_SUFFIXES:
|
|
raise unittest.SkipTest("Requires dynamic loading support.")
|
|
|
|
def find_spec(self, fullname):
|
|
importer = self.machinery.FileFinder(util.EXTENSIONS.path,
|
|
(self.machinery.ExtensionFileLoader,
|
|
self.machinery.EXTENSION_SUFFIXES))
|
|
|
|
return importer.find_spec(fullname)
|
|
|
|
def test_module(self):
|
|
self.assertTrue(self.find_spec(util.EXTENSIONS.name))
|
|
|
|
# No extension module as an __init__ available for testing.
|
|
test_package = test_package_in_package = None
|
|
|
|
# No extension module in a package available for testing.
|
|
test_module_in_package = None
|
|
|
|
# Extension modules cannot be an __init__ for a package.
|
|
test_package_over_module = None
|
|
|
|
def test_failure(self):
|
|
self.assertIsNone(self.find_spec('asdfjkl;'))
|
|
|
|
|
|
(Frozen_FinderTests,
|
|
Source_FinderTests
|
|
) = util.test_both(FinderTests, machinery=machinery)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|