added new graph metrics
This commit is contained in:
54
tests/render/test_import.py
Normal file
54
tests/render/test_import.py
Normal file
@@ -0,0 +1,54 @@
|
||||
import builtins
|
||||
import importlib.util
|
||||
from importlib import reload
|
||||
|
||||
import pytest
|
||||
|
||||
from lang_main.errors import DependencyMissingError
|
||||
|
||||
|
||||
@pytest.fixture(scope='function')
|
||||
def no_dep(monkeypatch):
|
||||
import_orig = builtins.__import__
|
||||
|
||||
def mocked_import(name, globals, locals, fromlist, level):
|
||||
if name == 'py4cytoscape':
|
||||
raise ImportError()
|
||||
return import_orig(name, locals, fromlist, level)
|
||||
|
||||
monkeypatch.setattr(builtins, '__import__', mocked_import)
|
||||
|
||||
|
||||
@pytest.fixture(scope='function')
|
||||
def patch_find_spec(monkeypatch):
|
||||
find_spec_orig = importlib.util.find_spec
|
||||
|
||||
def mocked_find_spec(*args, **kwargs):
|
||||
if args[0] == 'py4cytoscape':
|
||||
return None
|
||||
else:
|
||||
return find_spec_orig(*args, **kwargs)
|
||||
|
||||
monkeypatch.setattr(importlib.util, 'find_spec', mocked_find_spec)
|
||||
|
||||
|
||||
def test_p4c_available():
|
||||
import lang_main.constants
|
||||
|
||||
reload(lang_main.constants)
|
||||
|
||||
assert lang_main.constants.Dependencies.PY4C.value
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('patch_find_spec')
|
||||
def test_p4c_missing(monkeypatch):
|
||||
import lang_main.constants
|
||||
|
||||
reload(lang_main.constants)
|
||||
|
||||
assert not lang_main.constants.Dependencies.PY4C.value
|
||||
|
||||
with pytest.raises(DependencyMissingError):
|
||||
from lang_main import render
|
||||
|
||||
reload(render)
|
||||
Reference in New Issue
Block a user