From 1dddceefc758ba8893b390fadb1fed32bd094918 Mon Sep 17 00:00:00 2001 From: SkyLi Date: Fri, 25 Sep 2026 11:36:44 +0800 Subject: [PATCH] test: verify offline model failure message --- backend/tests/test_llm_and_rag.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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"))