added testing for importorskip
This commit is contained in:
parent
3a2621158c
commit
fd288e13ac
|
@ -1,4 +1,5 @@
|
||||||
# mypy: allow-untyped-defs
|
# mypy: allow-untyped-defs
|
||||||
|
import builtins
|
||||||
from functools import partial
|
from functools import partial
|
||||||
import inspect
|
import inspect
|
||||||
import os
|
import os
|
||||||
|
@ -7,6 +8,8 @@ import sys
|
||||||
import types
|
import types
|
||||||
from typing import Dict
|
from typing import Dict
|
||||||
from typing import List
|
from typing import List
|
||||||
|
from typing import Mapping
|
||||||
|
from typing import Sequence
|
||||||
from typing import Tuple
|
from typing import Tuple
|
||||||
from typing import Type
|
from typing import Type
|
||||||
|
|
||||||
|
@ -762,6 +765,27 @@ def test_importorskip_imports_last_module_part() -> None:
|
||||||
assert os.path == ospath
|
assert os.path == ospath
|
||||||
|
|
||||||
|
|
||||||
|
def test_importorskip_importError_Exception() -> None:
|
||||||
|
## Mocking the import function to raise a importError
|
||||||
|
realimport = builtins.__import__
|
||||||
|
|
||||||
|
def myimport(
|
||||||
|
name: str,
|
||||||
|
globals: Mapping[str, object] | None = None,
|
||||||
|
locals: Mapping[str, object] | None = None,
|
||||||
|
fromlist: Sequence[str] = (),
|
||||||
|
level: int = 0,
|
||||||
|
) -> types.ModuleType:
|
||||||
|
raise ImportError
|
||||||
|
|
||||||
|
builtins.__import__ = myimport
|
||||||
|
|
||||||
|
with pytest.raises(ImportError):
|
||||||
|
pytest.importorskip("abcdefghi")
|
||||||
|
|
||||||
|
builtins.__import__ = realimport
|
||||||
|
|
||||||
|
|
||||||
def test_importorskip_dev_module(monkeypatch) -> None:
|
def test_importorskip_dev_module(monkeypatch) -> None:
|
||||||
try:
|
try:
|
||||||
mod = types.ModuleType("mockmodule")
|
mod = types.ModuleType("mockmodule")
|
||||||
|
|
Loading…
Reference in New Issue