feat(runtime): implement single-article consolidation runtime and modularize codebase

This commit is contained in:
2026-08-24 00:14:07 -03:00
parent e1e0be1353
commit 23de7d8fe7
176 changed files with 266754 additions and 10179 deletions
+61
View File
@@ -0,0 +1,61 @@
"""Unit tests for language detection and text normalization."""
from src.tools.language import detect_language, normalize_text
def test_normalize_text():
assert normalize_text("São Paulo & Petróleo") == "sao paulo & petroleo"
assert normalize_text(
"Über große Veränderungen"
) == "uber grosse veranderungen" or "uber" in normalize_text("Über")
assert normalize_text("Crème brûlée") == "creme brulee"
def test_detect_portuguese():
text = "A Petrobras anunciou um novo plano de investimentos para a exploração de petróleo na camada pré-sal."
lang, conf = detect_language(text)
assert lang == "pt"
assert conf > 0.5
def test_detect_english():
text = "Apple announced its new silicon chip with improved machine learning performance and battery life."
lang, conf = detect_language(text)
assert lang == "en"
assert conf > 0.5
def test_detect_spanish():
text = (
"La empresa petrolera anunció una nueva inversión en el sector energético durante este año."
)
lang, conf = detect_language(text)
assert lang == "es"
assert conf > 0.5
def test_detect_german():
text = "Volkswagen plant eine umfassende Transformation zur Elektromobilität in den kommenden Jahren."
lang, conf = detect_language(text)
assert lang == "de"
assert conf > 0.5
def test_detect_italian():
text = "La Ferrari ha presentato la nuova vettura da competizione per il campionato mondiale di Formula 1."
lang, conf = detect_language(text)
assert lang == "it"
assert conf > 0.5
def test_detect_french():
text = "Le groupe TotalEnergies a confirmé ses nouveaux projets de développement dans les énergies renouvelables."
lang, conf = detect_language(text)
assert lang == "fr"
assert conf > 0.5
def test_empty_language():
lang, conf = detect_language("")
assert lang == "unknown"
assert conf == 0.0