mirror of
https://github.com/denizsafak/abogen.git
synced 2026-09-20 11:40:57 +02:00
refactor: group ConversionRequest fields into config objects
Domain config types (domain/config_types.py): - PronunciationConfig: pronunciation/heteronym/normalization overrides - SubtitleConfig: mode, format, max_words - CoverConfig: path, mime Domain functions now accept config objects: - build_tts_context(subtitle=, pronunciation=) instead of 9 individual params - make_subtitle_writer(subtitle=) instead of 3 params - process_and_write_subtitles(subtitle=) instead of 2 params - embed_m4b_metadata(cover=) instead of 2 params - build_epub3_package(cover=) instead of 2 params ConversionRequest: 18 flat fields + 8 config objects Application/config.py re-exports domain types All tests updated to new API
This commit is contained in:
@@ -12,6 +12,7 @@ from unittest.mock import MagicMock
|
||||
import numpy as np
|
||||
import pytest
|
||||
|
||||
from abogen.application.conversion_config import SaveConfig
|
||||
from abogen.application.conversion_executor import execute_conversion
|
||||
from abogen.application.conversion_models import (
|
||||
ChapterPlan,
|
||||
@@ -150,8 +151,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Hello world",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir)),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
@@ -198,10 +198,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Text",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save_chapters_separately=True,
|
||||
merge_chapters_at_end=True,
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir), save_chapters_separately=True, merge_chapters_at_end=True),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
@@ -262,8 +259,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Text",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir)),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
@@ -315,8 +311,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Text",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir)),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
@@ -377,8 +372,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Text",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir)),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
@@ -424,8 +418,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Hello world",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir)),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
@@ -471,8 +464,7 @@ class TestExecuteConversion:
|
||||
req = ConversionRequest(
|
||||
direct_text="Text",
|
||||
voice="M1",
|
||||
save_mode="custom_folder",
|
||||
output_folder=Path(tmpdir),
|
||||
save=SaveConfig(mode="custom_folder", output_folder=Path(tmpdir)),
|
||||
)
|
||||
plan = ConversionPlan(
|
||||
request=req,
|
||||
|
||||
Reference in New Issue
Block a user