Closed cpa-gecko closed 5 years ago
Kurzbeschreibung:
Der Aufruf einer Route erzeugt einen neuen RouteContext
und ruft damit die in Unicorn definierte handler
-Funktion auf. Innerhalb dieser ist es nun via this.injector
möglich, Bindings zu definieren und Instanzen zu erzeugen (siehe bspw. _unicorn/src/routes/cron/import_exchangerate.ts). Alles Seagull-Dependencies werden bereits in der Routen-Initialisierung automatisch gebunden (mode.environment-Logik)
Das Binding kann innerhalb eines RouteTest
über die Route angepasst werden (siehe bspw. _unicorn/test/routes/cron/import_exchangerates.ts)
Note: Currently RouteTest is not running in pure mode correctly, fix wip
Helloworld example was provided, please resolve the other issues and I am happy 👍
Vorschlag für (injectable-)testbare Routen
Notiz: Schöner wäre zweifellos eine constructor-injection, ein Umbau der Handler-Funktion bzw. Route auf eine instanzierbare Klasse würde aber einen deutlich größeren Aufwand nach sich ziehen. (wie bespr. mit @Harper04 @ksandkuhl )