#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Testlauf Band V (Partnerschaft) + Band VI (Familie) ueber die echte Pipeline.
Ruft worker.process_job() direkt auf -> bei Fehler kommt der volle Traceback.
Verifizierte Chartdaten aus dem Projekt. Empfaenger: zessin@designwerk-hamburg.de
"""
import sys, traceback
import worker

EMPF = "zessin@designwerk-hamburg.de"

dirk = {
    "kunde_name": "Dirk Zessin",
    "kunde_email": EMPF,
    "geburtsdatum": "31.03.1976",
    "geburtszeit": "15:00",
    "geburtsort": "Hamburg",
    "geburtsland": "Deutschland",
    "geburt_lat": "53.5511",
    "geburt_lon": "9.9937",
}
sibylle_extra = {
    "name": "Sibylle Steinmeier",
    "geburtsdatum": "11.02.1983",
    "geburtszeit": "02:20",
    "geburtsort": "Karlsruhe",
    "geburtsland": "Deutschland",
    "geburt_lat": "49.0069",
    "geburt_lon": "8.4037",
}
patrice_extra = {
    "name": "Patrice Steinmeier",
    "geburtsdatum": "09.03.2014",
    "geburtszeit": "22:30",
    "geburtsort": "Hamburg",
    "geburtsland": "Deutschland",
    "geburt_lat": "53.5511",
    "geburt_lon": "9.9937",
}

def lauf(label, job):
    print("\n" + "="*60)
    print("TEST:", label)
    print("="*60)
    try:
        res = worker.process_job(job)
        print("ERGEBNIS:", res)
        print(">>> OK:", label)
    except Exception as e:
        print(">>> FEHLER bei", label, ":", type(e).__name__, e)
        traceback.print_exc()

# Band V: Dirk + Sibylle (Partner)
jobV = dict(dirk)
jobV["band"] = "V"
jobV["personen_extra"] = [sibylle_extra]

# Band VI: Dirk + Sibylle + Patrice (Familie, mind. 3)
jobVI = dict(dirk)
jobVI["band"] = "VI"
jobVI["personen_extra"] = [sibylle_extra, patrice_extra]

if __name__ == "__main__":
    welche = sys.argv[1] if len(sys.argv) > 1 else "both"
    if welche in ("V", "both"):
        lauf("Band V (Partnerschaft Dirk+Sibylle)", jobV)
    if welche in ("VI", "both"):
        lauf("Band VI (Familie Dirk+Sibylle+Patrice)", jobVI)
