How to unit-test canActivate guard Methode der angular2 mit Jasmin?
Sorry für die Frage diese Art von Frage. Aber ich bin nicht in der Lage zu finden, jeder blog-oder youtube-tutorials auf schreiben der canActivate guard-Datei testen. Noch in der offiziellen Dokumentation gibt es nichts erwähnt.
jede Hilfe wird sehr geschätzt.
- Was genau würdest du gerne testen? Dass die
canActivate()
Methode in der guard ist in der Tat aufgerufen oder der code, der in dencanActivate()
Methode?
Du musst angemeldet sein, um einen Kommentar abzugeben.
da niemand meine Frage beantwortet, also werde ich einfügen mein code snippet für die Referenz, um den Menschen helfen, könnte diese situation.
sampleLoggedIn.guard.ts
sampleLoggedIn.guard.spec.ts
Diese Frage ist ziemlich alt - aber wie ich war versuchen zu finden, einige detaillierte unit-Tests-Dokumentation selbst in diesem Augenblick, wollte ich nur meinen Ansatz hier. Im Allgemeinen, wenn es Abhängigkeiten in meine guard /service /Komponente /was auch immer, ich denke diese sollten alle verspottet und nicht die Reale Dienste verwendet werden soll. Als dieser Leistungen sind nicht das, was wir testen wollen, in unserer Einheit test für die Wache - wir wollen einfach nur, um zu testen, die Wache.
So, hier ist ein Allgemeines Beispiel, wie ich es tun würde, für einen guard Rückkehr beobachten:
und das ist, was ich tun würde in deinem konkreten Fall (sollte die Arbeit mit Winkel-6, canActivate sollten auch 2 params):
{ provide: Router, useClass: { navigate: () => null } }
verursachen könnteTypeError: ctor is not a constructor
Fehler. VerwendenuseValue
stattuseClass
.