初始提交
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
import importlib
|
||||
import sys
|
||||
from collections.abc import Callable
|
||||
from pathlib import Path
|
||||
from types import ModuleType
|
||||
|
||||
import pytest
|
||||
|
||||
BACKEND_DIR = Path(__file__).resolve().parents[3]
|
||||
|
||||
if str(BACKEND_DIR) not in sys.path:
|
||||
sys.path.insert(0, str(BACKEND_DIR))
|
||||
|
||||
|
||||
def _load_module(module_name: str) -> ModuleType:
|
||||
sys.modules.pop(module_name, None)
|
||||
sys.modules.pop('cli', None)
|
||||
return importlib.import_module(module_name)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def backend_dir() -> Path:
|
||||
return BACKEND_DIR
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def load_module() -> Callable[[str], ModuleType]:
|
||||
return _load_module
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def cli_main(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.main')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def app_run_flow(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.wizard.flows.app_run')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def cache_clear_flow(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.wizard.flows.cache_clear')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def db_upgrade_flow(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.wizard.flows.db_upgrade')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def gen_export_flow(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.wizard.flows.gen_export')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def gen_import_flow(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.wizard.flows.gen_import')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def prod_check_flow(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.wizard.flows.prod_check')
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def exit_codes(load_module: Callable[[str], ModuleType]) -> ModuleType:
|
||||
return load_module('cli.exit_codes')
|
||||
Reference in New Issue
Block a user