Omniflo-Testsuite hinzugefuegt (Python + AutoLISP)
tests/test_omniflo.py (350 Zeilen):
Python-Tests fuer den Omniflo Bogen/Weiche Export. Testet:
- Unit-Tests fuer build_bogen_merkmale / build_weiche_merkmale gegen
Testdefinitionen aus omniflo_tests.json (kein BricsCAD erforderlich)
- Merkmale-Werte gegen den JSON-Katalog (omniflo_boegen/weichen.json)
- Korrekte Anzahl und Reihenfolge der Elemente in process_blocks()
- CSV-Ausgabeformat (Header, Spaltenanzahl, Merkmale als JSON)
- Integrationstest: liest eine tatsaechliche CSV aus einem BricsCAD-
Lauf (falls DXFM_TESTOUT gesetzt und Datei vorhanden)
Importiert direkt aus lib/export_csv.py (build_lookup, process_blocks,
build_bogen_merkmale, build_weiche_merkmale, load_json).
tests/test_omniflo.lsp (173 Zeilen):
AutoLISP-Tests fuer omni:insert-bogen und omni:insert-weiche.
Prueft Block-Einfuegung, Attribut-Setzung (HOEHE, DREHUNG, ARTINR)
und Fehlerverhalten bei ungueltigen Parametern. Laeuft direkt in
BricsCAD via (load "tests/test_omniflo.lsp").
tests/testdata/omniflo_tests.json (114 Zeilen):
Testdaten fuer test_omniflo.py: Definiert Testfaelle fuer Boegen
(je Winkel: 22.5, 45, 67.5, 90, 180) und Weichen (90°, 45°, koerper,
parallel) mit erwarteten Merkmale-Feldern und Beispiel-SivasNr.
tests/conftest.py:
Pytest-Fixtures fuer den Testlauf: data_dir, testdata_dir,
output_dir und omniflo_lookup (laedt Katalog-JSON falls vorhanden,
sonst leeres Dict als Fallback).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Vendored
+114
@@ -0,0 +1,114 @@
|
||||
[
|
||||
{
|
||||
"id": "OF_Bogen_225_R550",
|
||||
"type": "bogen",
|
||||
"sivasnr": "821104025",
|
||||
"hoehe": 2000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Bogen 22,5 Grad R550"
|
||||
},
|
||||
{
|
||||
"id": "OF_Bogen_45_R400",
|
||||
"type": "bogen",
|
||||
"sivasnr": "821104021",
|
||||
"hoehe": 2500,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Bogen 45 Grad R400"
|
||||
},
|
||||
{
|
||||
"id": "OF_Bogen_675_R400",
|
||||
"type": "bogen",
|
||||
"sivasnr": "821104024",
|
||||
"hoehe": 3000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Bogen 67,5 Grad R400"
|
||||
},
|
||||
{
|
||||
"id": "OF_Bogen_90_R630",
|
||||
"type": "bogen",
|
||||
"sivasnr": "821104033",
|
||||
"hoehe": 3500,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Bogen 90 Grad R630"
|
||||
},
|
||||
{
|
||||
"id": "OF_Bogen_180_R650",
|
||||
"type": "bogen",
|
||||
"sivasnr": "821104043",
|
||||
"hoehe": 4000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Bogen 180 Grad R650"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Einzel_45L",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372001",
|
||||
"hoehe": 2000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Einzelweiche 45 Grad Links"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Einzel_90L",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372021",
|
||||
"hoehe": 2500,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Einzelweiche 90 Grad Links"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Doppel_45",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372100",
|
||||
"hoehe": 3000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Doppelweiche 45 Grad"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Doppel_90",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372109",
|
||||
"hoehe": 3500,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Doppelweiche 90 Grad"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Dreiwege_45",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372200",
|
||||
"hoehe": 4000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Dreiwegeweiche 45 Grad"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Dreifach_90",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372404",
|
||||
"hoehe": 2000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Dreifachweiche 90 Grad"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Delta_90",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372401",
|
||||
"hoehe": 2500,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Deltaweiche 90 Grad"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weiche_Stern",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834372420",
|
||||
"hoehe": 3000,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Sternweiche"
|
||||
},
|
||||
{
|
||||
"id": "OF_Weichenkoerper_L",
|
||||
"type": "weiche",
|
||||
"sivasnr": "834342011",
|
||||
"hoehe": 3500,
|
||||
"drehung": 0.0,
|
||||
"description": "Omniflo Weichenkoerper Links"
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user