Skip to content

Commit 3c92aae

Browse files
author
bram
committed
Fixed all tests
1 parent aa1fa25 commit 3c92aae

File tree

4 files changed

+32
-39
lines changed

4 files changed

+32
-39
lines changed

python_gpt_po/tests/integration/test_real_po_files.py

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
import polib
1313
import pytest
1414

15-
from python_gpt_po.models.config import TranslationConfig
15+
from python_gpt_po.models.config import TranslationConfig, TranslationFlags
1616
# Import from the new modular structure
1717
from python_gpt_po.models.enums import ModelProvider
1818
from python_gpt_po.models.provider_clients import ProviderClients
@@ -102,41 +102,38 @@ def mock_provider_clients():
102102
@pytest.fixture
103103
def translation_service_openai(mock_provider_clients):
104104
"""Create an OpenAI translation service for testing."""
105+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
105106
config = TranslationConfig(
106107
provider_clients=mock_provider_clients,
107108
provider=ModelProvider.OPENAI,
108109
model="gpt-3.5-turbo",
109-
bulk_mode=True,
110-
fuzzy=False,
111-
folder_language=False
110+
flags=flags
112111
)
113112
return TranslationService(config=config)
114113

115114

116115
@pytest.fixture
117116
def translation_service_anthropic(mock_provider_clients):
118117
"""Create an Anthropic translation service for testing."""
118+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
119119
config = TranslationConfig(
120120
provider_clients=mock_provider_clients,
121121
provider=ModelProvider.ANTHROPIC,
122122
model="claude-3-5-sonnet-20241022",
123-
bulk_mode=True,
124-
fuzzy=False,
125-
folder_language=False
123+
flags=flags
126124
)
127125
return TranslationService(config=config)
128126

129127

130128
@pytest.fixture
131129
def translation_service_deepseek(mock_provider_clients):
132130
"""Create a DeepSeek translation service for testing."""
131+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
133132
config = TranslationConfig(
134133
provider_clients=mock_provider_clients,
135134
provider=ModelProvider.DEEPSEEK,
136135
model="deepseek-chat",
137-
bulk_mode=True,
138-
fuzzy=False,
139-
folder_language=False
136+
flags=flags
140137
)
141138
return TranslationService(config=config)
142139

@@ -290,7 +287,7 @@ def mock_prepare(*args, **kwargs):
290287
def test_folder_language_detection(translation_service_openai):
291288
"""Test detecting languages from folder structure."""
292289
# Enable folder language detection
293-
translation_service_openai.config.folder_language = True
290+
translation_service_openai.config.flags.folder_language = True
294291

295292
# Create a mock directory structure
296293
with tempfile.TemporaryDirectory() as tmp_dir:
@@ -511,13 +508,12 @@ def test_handling_diverse_po_formats():
511508
clients.openai_client = MagicMock()
512509

513510
# Create a test translation service
511+
flags = TranslationFlags(bulk_mode=False, fuzzy=False, folder_language=False) # Use single mode to simplify mocking
514512
config = TranslationConfig(
515513
provider_clients=clients,
516514
provider=ModelProvider.OPENAI,
517515
model="gpt-3.5-turbo",
518-
bulk_mode=False, # Use single mode to simplify mocking
519-
fuzzy=False,
520-
folder_language=False
516+
flags=flags
521517
)
522518

523519
service = TranslationService(config=config)

python_gpt_po/tests/test_multi_provider.py

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import pytest
1010
import responses
1111

12-
from python_gpt_po.models.config import TranslationConfig
12+
from python_gpt_po.models.config import TranslationConfig, TranslationFlags
1313
# Import the necessary classes from the new modular structure
1414
from python_gpt_po.models.enums import ModelProvider
1515
from python_gpt_po.models.provider_clients import ProviderClients
@@ -157,52 +157,48 @@ def mock_provider_clients() -> ProviderClients:
157157
@pytest.fixture
158158
def translation_config_openai(mock_provider_clients: ProviderClients) -> TranslationConfig:
159159
"""Create an OpenAI translation config for testing."""
160+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
160161
return TranslationConfig(
161162
provider_clients=mock_provider_clients,
162163
provider=ModelProvider.OPENAI,
163164
model="gpt-3.5-turbo",
164-
bulk_mode=True,
165-
fuzzy=False,
166-
folder_language=False
165+
flags=flags
167166
)
168167

169168

170169
@pytest.fixture
171170
def translation_config_azure_openai(mock_provider_clients: ProviderClients) -> TranslationConfig:
172171
"""Create an OpenAI translation config for testing."""
172+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
173173
return TranslationConfig(
174174
provider_clients=mock_provider_clients,
175175
provider=ModelProvider.AZURE_OPENAI,
176176
model="gpt-3.5-turbo",
177-
bulk_mode=True,
178-
fuzzy=False,
179-
folder_language=False
177+
flags=flags
180178
)
181179

182180

183181
@pytest.fixture
184182
def translation_config_anthropic(mock_provider_clients: ProviderClients) -> TranslationConfig:
185183
"""Create an Anthropic translation config for testing."""
184+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
186185
return TranslationConfig(
187186
provider_clients=mock_provider_clients,
188187
provider=ModelProvider.ANTHROPIC,
189188
model="claude-3-5-sonnet-20241022",
190-
bulk_mode=True,
191-
fuzzy=False,
192-
folder_language=False
189+
flags=flags
193190
)
194191

195192

196193
@pytest.fixture
197194
def translation_config_deepseek(mock_provider_clients: ProviderClients) -> TranslationConfig:
198195
"""Create a DeepSeek translation config for testing."""
196+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False)
199197
return TranslationConfig(
200198
provider_clients=mock_provider_clients,
201199
provider=ModelProvider.DEEPSEEK,
202200
model="deepseek-chat",
203-
bulk_mode=True,
204-
fuzzy=False,
205-
folder_language=False
201+
flags=flags
206202
)
207203

208204

@@ -482,7 +478,7 @@ def test_process_po_file_all_providers(mock_pofile,
482478
def test_fuzzy_flag_handling(mock_disable_fuzzy, translation_service_openai: TranslationService, temp_po_file):
483479
"""Test handling of fuzzy translations."""
484480
# Enable fuzzy flag
485-
translation_service_openai.config.fuzzy = True
481+
translation_service_openai.config.flags.fuzzy = True
486482

487483
# Mock the PO file handling
488484
with patch('polib.pofile') as mock_pofile:

python_gpt_po/tests/test_po_translator.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
import pytest
99

10-
from python_gpt_po.models.config import TranslationConfig
10+
from python_gpt_po.models.config import TranslationConfig, TranslationFlags
1111
# Import from the new modular structure
1212
from python_gpt_po.models.enums import ModelProvider
1313
from python_gpt_po.models.provider_clients import ProviderClients
@@ -36,13 +36,16 @@ def fixture_translation_config(mock_openai_client):
3636
provider_clients.openai_client = mock_openai_client
3737

3838
model = "gpt-3.5-turbo"
39+
flags = TranslationFlags(
40+
bulk_mode=True,
41+
fuzzy=False,
42+
folder_language=False
43+
)
3944
return TranslationConfig(
4045
provider_clients=provider_clients,
4146
provider=ModelProvider.OPENAI,
4247
model=model,
43-
bulk_mode=True,
44-
fuzzy=False,
45-
folder_language=False
48+
flags=flags
4649
)
4750

4851

@@ -100,13 +103,13 @@ def test_process_po_file(mock_po_file_handler_class, translation_service, tmp_pa
100103
mock_po_file_handler.get_file_language.return_value = 'es'
101104

102105
# Explicitly setting fuzzy=True to trigger the function
103-
translation_service.config.fuzzy = True
106+
translation_service.config.flags.fuzzy = True
104107

105108
# We need to mock the _prepare_po_file method to use our mock
106109
original_prepare = translation_service._prepare_po_file
107110

108111
def mock_prepare(po_file_path, languages):
109-
if translation_service.config.fuzzy:
112+
if translation_service.config.flags.fuzzy:
110113
translation_service.po_file_handler.disable_fuzzy_translations(po_file_path)
111114
mock_po = MagicMock()
112115
mock_po.__iter__.return_value = []

python_gpt_po/tests/unit/test_translation_service_fuzzy.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import polib
44

5-
from python_gpt_po.models.config import TranslationConfig
5+
from python_gpt_po.models.config import TranslationConfig, TranslationFlags
66
from python_gpt_po.models.enums import ModelProvider
77
from python_gpt_po.models.provider_clients import ProviderClients
88
from python_gpt_po.services.translation_service import TranslationService
@@ -24,14 +24,12 @@ def test_fix_fuzzy_entries_on_sample_po_content(tmp_path):
2424

2525
# Setup dummy config
2626
clients = ProviderClients()
27+
flags = TranslationFlags(bulk_mode=True, fuzzy=False, folder_language=False, fix_fuzzy=True)
2728
config = TranslationConfig(
2829
provider_clients=clients,
2930
provider=ModelProvider.OPENAI,
3031
model="gpt-4o",
31-
bulk_mode=True,
32-
fuzzy=False,
33-
folder_language=False,
34-
fix_fuzzy=True
32+
flags=flags
3533
)
3634
service = TranslationService(config=config)
3735

0 commit comments

Comments
 (0)