Files
FinDataHub/Scripts/bin/tests/conftest.py
T
FinDataHub 11d36d1c1e fix(repo): 修正 Scripts 目录索引大小写并补齐未入库脚本
问题
- 索引中该目录记为小写 `scripts/`,工作区实为 `Scripts/`。因 core.ignorecase=true,
  本地 `git diff -- Scripts/bin/x.py` 会**静默返回空**(看似无改动),
  且在大小写敏感环境(Linux CI / Docker 挂载)会检出 `scripts/`,
  与全仓所有 `Scripts/...` 引用不匹配。
- 该目录此前 10 个脚本(check_python_version.py、perf_snapshot.py、
  install_collector_launchd.py、mysql_toggle.sh 等)从未入库,
  而 CI 第 31 行正调用 `Scripts/bin/check_python_version.py --strict` ——
  全新检出必然失败。

改动
- 索引路径统一为 `Scripts/`(工作区文件未移动,仅索引改名)。
- 补齐上述 10 个未跟踪脚本及其测试。

影响
- 修正前索引 35 条(全为小写路径),修正后 45 条。
2026-09-18 22:37:32 +08:00

18 lines
630 B
Python

# coding=utf-8
"""Scripts/bin 测试公共 fixture.
预先注入 pymysql mock,使 db_pool 模块能在无 pymysql 环境下被导入。
"""
import sys
import types
# db_pool.py 顶层 import pymysql,测试环境可能未安装,
# 注入一个空模块使导入成功,具体行为由测试中的 patch 控制。
if "pymysql" not in sys.modules:
_pymysql_mock = types.ModuleType("pymysql")
_pymysql_mock.connect = lambda **kw: None
_pymysql_mock.Error = type("Error", (Exception,), {})
_pymysql_mock.OperationalError = type("OperationalError", (Exception,), {})
sys.modules["pymysql"] = _pymysql_mock