refactor: consolidate generation workflow helpers

This commit is contained in:
2026-04-18 13:03:23 +08:00
parent e201fa3358
commit ae7bd79267
4 changed files with 361 additions and 248 deletions

View File

@@ -428,6 +428,33 @@ class TestUnifiedGenerations:
assert data["generation_status"] == "narrative_ready"
assert data["image_status"] == "not_requested"
def test_create_story_generation_image_failure(
self,
auth_client: TestClient,
mock_text_provider,
):
with patch("app.services.story_service.generate_image", new_callable=AsyncMock) as mock_img:
mock_img.side_effect = Exception("Image API error")
response = auth_client.post(
"/api/generations",
json={
"output_mode": "story",
"type": "keywords",
"data": "小兔子, 森林",
"generate_images": True,
},
)
assert response.status_code == 200
data = response.json()
assert data["image_url"] is None
assert data["generation_status"] == "degraded_completed"
assert data["image_status"] == "failed"
assert data["audio_status"] == "not_requested"
assert "Image API error" in data["errors"]["image"]
assert "Image API error" in data["last_error"]
def test_create_storybook_generation_success(self, auth_client: TestClient):
with patch(
"app.services.story_service.generate_storybook",