forked from pytest-dev/pytest
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_meta.py
More file actions
34 lines (26 loc) · 793 Bytes
/
test_meta.py
File metadata and controls
34 lines (26 loc) · 793 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"""Test importing of all internal packages and modules.
This ensures all internal packages can be imported without needing the pytest
namespace being set, which is critical for the initialization of xdist.
"""
from __future__ import annotations
import pkgutil
import subprocess
import sys
import _pytest
import pytest
def _modules() -> list[str]:
pytest_pkg: str = _pytest.__path__ # type: ignore
return sorted(
n
for _, n, _ in pkgutil.walk_packages(pytest_pkg, prefix=_pytest.__name__ + ".")
)
@pytest.mark.slow
@pytest.mark.parametrize("module", _modules())
def test_no_warnings(module: str) -> None:
# fmt: off
subprocess.check_call((
sys.executable,
"-W", "error",
"-c", f"__import__({module!r})",
))
# fmt: on