Bonjour,
j'essaye de réaliser un test de swiftmailer.
Voici mon code test de swift mailer
public function testSwiftMailer() { aroundaroundaround $client = static::createClient(); $client->enableProfiler(); $crawler = $client->request('POST', '/validation/6'); $mailCollector = $client->getProfile()->getCollector('swiftmailer'); $this->assertEquals(1, $mailCollector->getMessageCount()); $collectedMessages = $mailCollector->getMessages(); $message = $collectedMessages[0]; }
Lorsque la personne à acheter un billet elle est redirigée vers une page de confirmation à ce moment j'utilise le service swiftmailer pour envoyer les billets par mail.
"Failed asserting that 0 matches expected 1". Le code en lui même me parait bon, et dans mon controller j'utilise bien mon service lors de /validation/id
merci par avance pour m'éclairer je suis vraiment débutant avec Symfony.
Ton erreur est explicite :
$this->assertEquals(1, $mailCollector->getMessageCount()); // Attend 1 mais reçois 0. Tu as donc aucun message.
Il faudrait comprendre ce que fais ce $mailCollector
et j'imagine, comprendre pourquoi ton service n'envoie pas le message.
Merci de ta réponse, effectivement c'est plutôt clair seulement je ne comprends pas pourquoi il ne retourne rien, car au moment ou la personne est redirigée sur validation/id un email lui est envoyé.
$mailCollerctor est censé collecté les mails envoyé lors de cette redirection puis de compter combien de mail a été envoyé non ?