test_foerderer.py: Spaltenindizes an neue Fehler-/IDs-Spalten angepasst
CSV-Header hat inzwischen eine "Fehler"-Spalte (export_csv.py, zwischen Nachbarn und Merkmale) und der Sivas-Export eine "IDs"-Spalte (export_sivas.py, vor details) bekommen - der Test war darauf noch nicht nachgezogen und erwartete die alten Spaltenpositionen/Header, wodurch Header- und Merkmale/details-JSON-Pruefungen fehlschlugen. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -203,7 +203,8 @@ class TestFoerdererExportCSV:
|
|||||||
def test_header_felder(self):
|
def test_header_felder(self):
|
||||||
"""CSV-Header muss korrekte Spaltenbezeichnungen haben."""
|
"""CSV-Header muss korrekte Spaltenbezeichnungen haben."""
|
||||||
expected = ["Elementnummer", "TeileArt", "TeileId", "Bezeichnung",
|
expected = ["Elementnummer", "TeileArt", "TeileId", "Bezeichnung",
|
||||||
"Planquadrat", "Anzahl", "Position", "Boundingbox", "Nachbarn", "Merkmale"]
|
"Planquadrat", "Anzahl", "Position", "Boundingbox", "Nachbarn",
|
||||||
|
"Fehler", "Merkmale"]
|
||||||
for i, name in enumerate(expected):
|
for i, name in enumerate(expected):
|
||||||
assert self.header[i] == name, (
|
assert self.header[i] == name, (
|
||||||
f"Header[{i}]: erwartet '{name}', ist '{self.header[i]}'"
|
f"Header[{i}]: erwartet '{name}', ist '{self.header[i]}'"
|
||||||
@@ -235,10 +236,10 @@ class TestFoerdererExportCSV:
|
|||||||
def test_merkmale_sind_valides_json(self):
|
def test_merkmale_sind_valides_json(self):
|
||||||
"""Merkmale-Spalte muss valides JSON enthalten."""
|
"""Merkmale-Spalte muss valides JSON enthalten."""
|
||||||
for i, row in enumerate(self.rows):
|
for i, row in enumerate(self.rows):
|
||||||
if len(row) < 10:
|
if len(row) < 11:
|
||||||
continue
|
continue
|
||||||
try:
|
try:
|
||||||
json.loads(row[9])
|
json.loads(row[10])
|
||||||
except json.JSONDecodeError as e:
|
except json.JSONDecodeError as e:
|
||||||
pytest.fail(f"Zeile {i + 2}: Merkmale ist kein valides JSON: {e}")
|
pytest.fail(f"Zeile {i + 2}: Merkmale ist kein valides JSON: {e}")
|
||||||
|
|
||||||
@@ -247,9 +248,9 @@ class TestFoerdererExportCSV:
|
|||||||
required = {"Typ", "Winkel", "DeltaH_mm", "DeltaL_mm",
|
required = {"Typ", "Winkel", "DeltaH_mm", "DeltaL_mm",
|
||||||
"L_VF_m", "Hoehe_Von_mm", "Hoehe_Bis_mm"}
|
"L_VF_m", "Hoehe_Von_mm", "Hoehe_Bis_mm"}
|
||||||
for i, row in enumerate(self.rows):
|
for i, row in enumerate(self.rows):
|
||||||
if len(row) < 10:
|
if len(row) < 11:
|
||||||
continue
|
continue
|
||||||
merkmale = json.loads(row[9])
|
merkmale = json.loads(row[10])
|
||||||
missing = required - set(merkmale.keys())
|
missing = required - set(merkmale.keys())
|
||||||
assert not missing, (
|
assert not missing, (
|
||||||
f"Zeile {i + 2}: Fehlende Merkmale-Felder: {missing}"
|
f"Zeile {i + 2}: Fehlende Merkmale-Felder: {missing}"
|
||||||
@@ -290,7 +291,7 @@ class TestFoerdererExportSivas:
|
|||||||
def test_header_felder(self):
|
def test_header_felder(self):
|
||||||
"""Sivas-CSV-Header muss korrekte Spalten haben."""
|
"""Sivas-CSV-Header muss korrekte Spalten haben."""
|
||||||
expected = ["Nr", "TeileArt", "SivasNummer", "Bezeichnung",
|
expected = ["Nr", "TeileArt", "SivasNummer", "Bezeichnung",
|
||||||
"Dispogruppe", "Anzahl", "Laenge[mm]", "details"]
|
"Dispogruppe", "Anzahl", "Laenge[mm]", "IDs", "details"]
|
||||||
for i, name in enumerate(expected):
|
for i, name in enumerate(expected):
|
||||||
assert self.header[i] == name, (
|
assert self.header[i] == name, (
|
||||||
f"Header[{i}]: erwartet '{name}', ist '{self.header[i]}'"
|
f"Header[{i}]: erwartet '{name}', ist '{self.header[i]}'"
|
||||||
|
|||||||
Reference in New Issue
Block a user