Ich teste meine Laravel (5.2) -API die folgende Art und Weise, indem sie zwei Anforderungen auf dem gleichen Test (Routen auf dem Hut: api):TokenGuard (api) Abrufen von alten Benutzern nach dem zweiten Anfrage
$this->getJson('v1/ratings', 'POST');
// v1/ratingsapi_token=JcM6ftg6icLPGAbUX9E37HGSYsrAYU0GH1AJhoYxEfIi5LwhalRBf0iAcmJ2
dann mache ich die zweite Anforderung mit einem anderen Token:
// v1/ratings?api_token=JgYdM890bIPHVYsiddHUp5vXaG9C1qhjLcYdZ1UioFZpPvPANGMqw26RJ3RB
Aber ich bin immer noch mit dem gleichen Benutzer angemeldet ...
aus Illuminate \ Auth kommt \ TokenGuard @ user:
Wenn ich diesen Block kommentieren, funktioniert alles gut, aber ich verstehe nicht, warum es den Benutzer von der vorherigen Anfrage erhält?
Ich dachte mir, aber es soll nicht den Benutzer über 2 Anfragen zwischenspeichern, wie es in der Beschreibung geschrieben wird. Die gute Frage wäre: Warum besteht der Benutzer auf 2 verschiedenen Anfragen? –
Können Sie Ihren Beitrag mit genau wie Sie Ihren Test bearbeiten? Ich meine es ist PHPUnit, Standard-Laravel-Testfall, Sie geben die URLs in Ihrem Browser oder etwas anderes ein. – TheFallen
Eigentlich gerade gefunden, warum: Ich verlasse nie die App während der Ausführung meiner 2 Anfragen auf meinem Einzeltest So wird der TokenGuard nie wieder aufgebaut, so dass es den alten Benutzer behielt. Sie müssen Ihren Guard-Benutzer während des Tests manuell aktualisieren –