public function testSendEmailActionMultipleTimes() { $client = $this->createAuthenticatedClient(); $client->enableProfiler(); $client->request('GET', '/security/reset/email', ['user' => $this->user1->getUsername()]); $response = json_decode($client->getResponse()->getContent()); // asserting response $this->assertEquals(200, $client->getResponse()->getStatusCode()); $this->assertEquals($this->user1->getEmail(), $response->email); // second request should be blocked $client->request('GET', '/security/reset/email', ['user' => $this->user1->getUsername()]); $response = json_decode($client->getResponse()->getContent()); $mailCollector = $client->getProfile()->getCollector('swiftmailer'); // asserting response $this->assertEquals(400, $client->getResponse()->getStatusCode()); $this->assertEquals(1003, $response->code); $this->assertEquals(0, $mailCollector->getMessageCount()); }