feat: 完善知识库、策略预览与OnlyOffice集成,增强后端启动依赖检查
This commit is contained in:
40
server/tests/test_server_start_dependencies.py
Normal file
40
server/tests/test_server_start_dependencies.py
Normal file
@@ -0,0 +1,40 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from pathlib import Path
|
||||
import os
|
||||
import stat
|
||||
import subprocess
|
||||
|
||||
|
||||
def test_dependencies_ready_fails_when_jwt_is_missing(tmp_path: Path) -> None:
|
||||
fake_python = tmp_path / "fake-python.sh"
|
||||
fake_python.write_text(
|
||||
"""#!/usr/bin/env bash
|
||||
if [ "$1" = "-c" ]; then
|
||||
case "$2" in
|
||||
*jwt*) exit 1 ;;
|
||||
*) exit 0 ;;
|
||||
esac
|
||||
fi
|
||||
exit 0
|
||||
""",
|
||||
encoding="utf-8",
|
||||
)
|
||||
fake_python.chmod(fake_python.stat().st_mode | stat.S_IEXEC)
|
||||
|
||||
script_path = Path(__file__).resolve().parents[1] / "server_start.sh"
|
||||
script_prefix = script_path.read_text(encoding="utf-8").split('case "$MODE" in', 1)[0]
|
||||
command = f"""{script_prefix}
|
||||
PYTHON_BIN="{fake_python}"
|
||||
dependencies_ready
|
||||
"""
|
||||
result = subprocess.run(
|
||||
["bash", "-c", command],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
env={**os.environ, "MODE": "test"},
|
||||
cwd=script_path.parent,
|
||||
check=False,
|
||||
)
|
||||
|
||||
assert result.returncode != 0
|
||||
Reference in New Issue
Block a user