Transmettre des cookies avec des tests dans Laravel – PHPUnit Testing

Lors des tests avec Laravel, les cookies sont réinitialisés à la prochaine requête.

Pour contourner cela, vous pouvez récupérer le cookie et l'insérer dans la requête suivante.

Comme:

public function test_cookies_with_multiple_requests(): void { $response = $this->get('/page-with-cookies'); $response->assertStatus(200); // Vérifier que le cookie avec COOKIENAME existe $response->assertCookie("COOKIENAME"); $newWesponse = $this->withCookies([ 'COOKIENAME' => $response->getCookie("COOKIENAME")->getValue() ])->get('/page-with-cookies'); $response->assertStatus(200); // Vous pouvez vérifier la valeur à partir du nom du cookie ici: // $response->assertCookie("COOKIENAME", "doit contenir cette valeur"); }

Grâce à ce blog pour m'avoir aidé à résoudre ce problème.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

fr_FRFrançais
Défiler vers le haut