Nouveau dans Laravel 13.35. Pour vérifier ce que transporte un événement ou une tâche simulés, il fallait passer une fonction qui inspecte l'objet et renvoie true. Les assertions des faux Event, Queue, Bus et Notification acceptent maintenant un tableau des propriétés attendues.
Avant
Event::assertDispatched(CommandePassee::class, function (CommandePassee $evenement) { return $evenement->numero === 'CMD-A12' && $evenement->total === 2550; });
Depuis Laravel 13.35
Event::assertDispatched(CommandePassee::class, ['numero' => 'CMD-A12', 'total' => 2550]);
Chaque propriété citée est comparée strictement (===) : 2550 n'est pas '2550'. Un modèle Eloquent se compare avec is(), donc par sa clé. Les propriétés non citées ne comptent pas.
À faire
POST /api/commandes annonce la commande (CommandePassee) et met en file la préparation du colis (PreparerColis). Le test de tests/Feature/CommandeTest.php vérifie qu'ils partent, mais pas ce qu'ils contiennent. Renforcez-le en passant à chaque assertion le tableau des propriétés attendues. Chaque mutant doit faire échouer vos tests.