add chinese subtitles
This commit is contained in:
@@ -71,3 +71,34 @@ def test_ai_tutor_rejects_unexpected_response(monkeypatch):
|
||||
|
||||
with pytest.raises(AITutorError):
|
||||
tutor.explain("Hello.")
|
||||
|
||||
|
||||
from sentence_api.ai_tutor import _parse_translation_payload
|
||||
|
||||
|
||||
def test_ai_tutor_translates_full_document(monkeypatch):
|
||||
requests_payloads = []
|
||||
|
||||
def fake_post(endpoint, headers, json, timeout):
|
||||
requests_payloads.append((endpoint, headers, json, timeout))
|
||||
return FakeResponse(body={"choices": [{"message": {"content": '["你好。", "见到你很高兴。"]'}}]})
|
||||
|
||||
monkeypatch.setattr("sentence_api.ai_tutor.requests.post", fake_post)
|
||||
tutor = AITutor("https://ai.test/v1", "secret", "test-model", 1.5)
|
||||
|
||||
translated = tutor.translate_sentences(
|
||||
[(0, "Hello."), (1, "Nice to meet you.")],
|
||||
course_title="Greetings",
|
||||
)
|
||||
|
||||
assert translated == {0: "你好。", 1: "见到你很高兴。"}
|
||||
_endpoint, _headers, payload, timeout = requests_payloads[0]
|
||||
user_prompt = payload["messages"][1]["content"]
|
||||
assert "Hello." in user_prompt
|
||||
assert "Nice to meet you." in user_prompt
|
||||
assert timeout == 90.0
|
||||
|
||||
|
||||
def test_parse_translation_payload_accepts_fenced_json_and_numbered_lines():
|
||||
assert _parse_translation_payload('```json\n["一", "二"]\n```', 2) == ["一", "二"]
|
||||
assert _parse_translation_payload("1. 一\n2. 二", 2) == ["一", "二"]
|
||||
|
||||
Reference in New Issue
Block a user