feat: Glossar für die Magdeburg-Rede

- magdeburg.glossar.txt: 64 feste Ersetzungen (Namen, Orte, Hörfehler)
  und 10 Hinweis-Begriffe; jede Ersetzung trifft den Rohtext
- Test prüft jetzt beide Beispiel-Glossare gegen ihre Testdaten
- README: Glossare zu beiden Testdaten erwähnt

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Dieter Schlüter 2026-10-10 18:11:58 +02:00
commit 8fe7c394f1

View file

@ -107,10 +107,15 @@ def test_build_system_appends_terms():
assert "- Kreml\n- Egon Bahr" in system
def test_sample_glossary_replacements_all_match(capsys):
"""Every rule in ramstein.glossar.txt must hit the sample transcript."""
_, replacements = rk.read_glossary(GLOSSARY)
rk.apply_replacements(flat(SAMPLE.read_text(encoding="utf-8")), replacements)
@pytest.mark.parametrize("glossary, sample", [
("ramstein.glossar.txt", "ramstein.de.txt"),
("magdeburg.glossar.txt", "magdeburg.de-orig.txt"),
])
def test_sample_glossary_replacements_all_match(capsys, glossary, sample):
"""Every rule in a sample glossary must hit its sample transcript."""
_, replacements = rk.read_glossary(REPO / glossary)
text = (REPO / "testdaten" / sample).read_text(encoding="utf-8")
rk.apply_replacements(flat(text), replacements)
assert "ohne Treffer" not in capsys.readouterr().out