[TEST] Veraltete Test-Erwartungen an aktuelle Daten angepasst (Foerderer/Mubea/Omniflo-Strecke)

17 vorbestehende Failures behoben - alles veraltete Tests, kein Produktivcode:

test_foerderer.py (3): CSV-Spalten header-basiert statt per festem Index
ansprechen. Die Export-CSV hat inzwischen 17 statt 11 Spalten (Insertpoint,
K1-K4, Warnungen kamen dazu, siehe lib/export_csv.py) - die Tests hingen an
row[10] fuer Merkmale. Neu: self.col-Lookup + _cell(row, spaltenname), robust
gegen weitere Spalten.

test_mubea.py (2): _is_gefaelle zaehlte einen zweiten GF_*-Eintrag (block
'S-LP', ein Separator mit assigned_to GF_Mubea) faelschlich als Gefaellestrecke
mit -> erwartete 40 statt 20. Jetzt: GF_* UND nicht _is_separator.

test_omniflo_strecke.py (12): Test und seine Testdaten-Datei waren auf zwei
verschiedene Datenmodelle geschrieben (Test: 12 Elemente, gerade_start/
kurve_180/gerade_ende, Felder drehung_ende/x_mitte; Datei: 7 Elemente,
gerade_unten/gerade_oben/bogen/weiche ohne diese Felder). Test komplett auf das
tatsaechliche 7-Element-Modell umgeschrieben (Struktur/Katalog/Geraden-
Geometrie); Boegen gegen omniflo_boegen.json, Weiche gegen omniflo_weichen.json.

Nicht angefasst (bewusst): 3x hundm05 (funktioniert noch nicht) und
test_omniflo.py::test_zeilen_matches_reference (inkonsistente Export-CSV +
veraltete Referenz - Analyse: export_csv.py ist konsistent 17-spaltig, die
Output-Datei stammt aus einem gemischten Lauf; Referenz per --set-as-reference
neu abnehmen, kein Code-Fix noetig).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-29 20:08:39 +02:00
parent 493967c06d
commit 775e27182c
3 changed files with 110 additions and 103 deletions
+5 -1
View File
@@ -29,8 +29,12 @@ def _is_vario(item):
return tid.startswith("VF_")
def _is_gefaelle(item):
# Eine echte Gefaellestrecke traegt test_id GF_* UND ist KEIN Separator.
# Achtung: In mubea.json gibt es einen zweiten GF_*-Eintrag mit "block": "S-LP"
# (ein Separator, assigned_to GF_Mubea) - der wird ueber _is_separator gezaehlt
# und darf hier NICHT als Gefaellestrecke mitgezaehlt werden (sonst 40 statt 20).
tid = item.get("test_id", "")
return tid.startswith("GF_")
return tid.startswith("GF_") and not _is_separator(item)
def _vario_count(testdata):