diff --git a/backend/tests/test_llm_and_rag.py b/backend/tests/test_llm_and_rag.py index 47f2691..d09a062 100644 --- a/backend/tests/test_llm_and_rag.py +++ b/backend/tests/test_llm_and_rag.py @@ -6,7 +6,7 @@ from sqlalchemy import select from wisegrade.llm import DeepSeekClient, ModelError, ScoreResult, validate_score from wisegrade.models import AppSetting, KnowledgeChunk -from wisegrade.rag import ingest, retrieve, split_pages +from wisegrade.rag import ingest, local_encoder, retrieve, split_pages from wisegrade.settings_store import model_config, save_model_config @@ -63,3 +63,8 @@ def test_model_key_is_encrypted_and_hidden(db): stored = db.get(AppSetting, "api_key") assert b"test-private-key" not in stored.encrypted_value assert model_config(db)["model"] == "deepseek-flash" + + +def test_missing_offline_embedding_package_fails_clearly(tmp_path): + with pytest.raises(RuntimeError, match="离线嵌入模型不存在"): + local_encoder(str(tmp_path / "missing-model"))