test: Testdaten (Magdeburg-Rede) ins Repo aufnehmen
- testdaten/magdeburg.de-orig.vtt (YouTube-Auto-Untertitel) und der daraus mit vtt2txt.py erzeugte Rohtext magdeburg.de-orig.txt - Test: jede Beispiel-VTT ergibt genau ihre .txt Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
99238870f7
commit
8e1945e406
2 changed files with 15 additions and 6 deletions
14
README.md
14
README.md
|
|
@ -90,13 +90,15 @@ Ersetzungen ohne Treffer werden gemeldet (Tippfehler im Glossar).
|
||||||
|
|
||||||
## Testdaten
|
## Testdaten
|
||||||
|
|
||||||
`testdaten/` enthält eine Rede über die US Air Base Ramstein:
|
`testdaten/` enthält zwei Reden, jeweils als automatische YouTube-Untertitel
|
||||||
|
(`.vtt`, Original) und daraus mit `vtt2txt.py` gewonnener Rohtext (`.txt`, Eingabe
|
||||||
|
für das Programm):
|
||||||
|
|
||||||
- `ramstein.de.vtt`: automatische YouTube-Untertitel (Original)
|
- `ramstein.de.*`: Rede über die US Air Base Ramstein (mit Glossar `ramstein.glossar.txt`)
|
||||||
- `ramstein.de.txt`: daraus gewonnener Rohtext (Eingabe für das Programm)
|
- `magdeburg.de-orig.*`: Rede in Magdeburg (noch ohne Glossar)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./vtt2txt.py -i testdaten/ramstein.de.vtt # erzeugt testdaten/ramstein.de.txt neu
|
./vtt2txt.py -i "testdaten/*.vtt" # erzeugt alle .txt neu
|
||||||
./rede_korrigieren.py -i testdaten/ramstein.de.txt -g ramstein.glossar.txt
|
./rede_korrigieren.py -i testdaten/ramstein.de.txt -g ramstein.glossar.txt
|
||||||
# → testdaten/ramstein.de.korrigiert.txt (nicht versioniert)
|
# → testdaten/ramstein.de.korrigiert.txt (nicht versioniert)
|
||||||
```
|
```
|
||||||
|
|
@ -113,8 +115,8 @@ Die Tests brauchen kein Ollama: Modellaufrufe werden durch Fakes ersetzt. Geprü
|
||||||
werden Abschnittsbildung, Glossar (inkl. „jede Ersetzung in `ramstein.glossar.txt`
|
werden Abschnittsbildung, Glossar (inkl. „jede Ersetzung in `ramstein.glossar.txt`
|
||||||
trifft die Testdaten“), Streaming-Auswertung, Absatzgliederung (Text bleibt
|
trifft die Testdaten“), Streaming-Auswertung, Absatzgliederung (Text bleibt
|
||||||
unverändert, 3–10 Sätze), Zwischenspeicher/Fortsetzen und die Kommandozeile.
|
unverändert, 3–10 Sätze), Zwischenspeicher/Fortsetzen und die Kommandozeile.
|
||||||
`tests/test_vtt2txt.py` prüft die VTT-Umwandlung: `testdaten/ramstein.de.vtt`
|
`tests/test_vtt2txt.py` prüft die VTT-Umwandlung: jede `.vtt` in `testdaten/`
|
||||||
ergibt genau `testdaten/ramstein.de.txt`, echte Wiederholungen bleiben erhalten,
|
ergibt genau die zugehörige `.txt`, echte Wiederholungen bleiben erhalten,
|
||||||
dazu Muster, Ausgabeverzeichnis und Fehlerfälle.
|
dazu Muster, Ausgabeverzeichnis und Fehlerfälle.
|
||||||
|
|
||||||
## Zwischenstände
|
## Zwischenstände
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,13 @@ def test_main_default_output_matches_sample(sample_copy, monkeypatch, capsys):
|
||||||
assert f"Erstellt: {target}" in capsys.readouterr().out
|
assert f"Erstellt: {target}" in capsys.readouterr().out
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("name", ["ramstein.de", "magdeburg.de-orig"])
|
||||||
|
def test_sample_vtt_gives_sample_txt(name):
|
||||||
|
vtt = (REPO / "testdaten" / f"{name}.vtt").read_text(encoding="utf-8-sig")
|
||||||
|
txt = (REPO / "testdaten" / f"{name}.txt").read_text(encoding="utf-8")
|
||||||
|
assert vtt2txt.vtt_to_lines(vtt) == txt.splitlines()
|
||||||
|
|
||||||
|
|
||||||
def test_main_multiple_inputs(sample_copy, monkeypatch):
|
def test_main_multiple_inputs(sample_copy, monkeypatch):
|
||||||
second = sample_copy.with_name("rede.en.vtt")
|
second = sample_copy.with_name("rede.en.vtt")
|
||||||
shutil.copy(sample_copy, second)
|
shutil.copy(sample_copy, second)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue