예제 #1
0
 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());
 }