public function testRateLimited()
 {
     $rateMock = new RateLimitMock();
     $this->mockProvider('ratelimit', $rateMock->setRateLimited(true));
     $response = '{"message":"Too many requests, try again in 0 seconds.","retry-after":0}';
     $fullResponse = $this->failedResponse($response, 429);
     $client = $this->createClient(array('HTTP_HOST' => '192.168.169.13'));
     $client->request('GET', '/status');
     $this->assertEquals($client->getResponse()->getStatusCode(), 429);
     $this->assertEquals($client->getResponse()->getContent(), $fullResponse);
 }
示例#2
0
 public function createApplication()
 {
     // app.php must return an Application instance
     require __DIR__ . '/../../src/app.php';
     $app['debug'] = true;
     unset($app['exception_handler']);
     $this->app = $app;
     $rateMock = new RateLimitMock();
     $this->mockProvider('ratelimit', $rateMock->setRateLimited(false));
     require __DIR__ . '/../../config/prod.php';
     require __DIR__ . '/../../src/routes.php';
     require __DIR__ . '/../../src/controllers.php';
     return $app;
 }