"""Merkmale der GR_-Geruest-Bloecke im CSV-Export (build_geruest_merkmale). Prueft die Teilefarbe (Attribut TEILEFARBE - das frueher gelesene FARBE gibt es im Schema nicht) und die Laengenabzuege, die nur der Rohr-Geruest-Traeger traegt und die bei den anderen GR_-Bloecken nicht auftauchen duerfen. """ import os import sys sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "lib")) from export_csv import build_geruest_merkmale # noqa: E402 def test_teilefarbe_aus_teilefarbe_attribut(): block = {"attribs": {"TEILEART": "Geruest Saeule 1 Zoll", "TEILEFARBE": ",RAL7030", "LAENGE": "2000", "LAYER": "D-6"}} m = build_geruest_merkmale(block) assert m["Farbe"] == ",RAL7030" assert m["Laenge"] == "2000" assert m["Layer"] == "D-6" def test_ohne_abzug_keine_abzugsmerkmale(): m = build_geruest_merkmale({"attribs": {"TEILEART": "Geruest Rohrabhaenger"}}) assert "LaengenabzugAnfang" not in m assert "LaengenabzugEnde" not in m def test_traeger_abzuege(): block = {"attribs": {"TEILEART": "Geruest Traeger 1 Zoll", "LAENGE": "965", "LAENGENABZUGANFANG": "0", "LAENGENABZUGENDE": "35"}} m = build_geruest_merkmale(block) assert m["Laenge"] == "965" assert m["LaengenabzugAnfang"] == "0" assert m["LaengenabzugEnde"] == "35"