Files
iAOP/templates/ti-cl4/perf-budget/tests/_bootstrap.py
T

27 lines
864 B
Python
Raw Normal View History

# -*- coding: utf-8 -*-
"""测试引导:把 ``templates/ti-cl4/perf-budget``(目录名含连字符)挂载为
可导入包 ``perf_budget``(与 core 模块测试引导同款模式)。
本模块零内核依赖(纯标准库),仅挂载自身包。
"""
import importlib.util
import os
import sys
PKG_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
def _load_package(name: str, path: str) -> None:
"""按文件路径完整加载一个包(执行其 __init__.py)。"""
if name in sys.modules:
return
init_py = os.path.join(path, "__init__.py")
spec = importlib.util.spec_from_file_location(
name, init_py, submodule_search_locations=[path])
module = importlib.util.module_from_spec(spec)
sys.modules[name] = module
spec.loader.exec_module(module)
_load_package("perf_budget", PKG_DIR)