/** * @dataProvider handleDataProvider */ public function testHandle($uri, $canHandle, $status, $content, $contentType) { $mockRequest = $this->getMockBuilder('Symfony\\Component\\HttpFoundation\\Request')->setMethods(['getRequestUri'])->getMockForAbstractClass(); $mockRequest->expects($this->any())->method('getRequestUri')->will($this->returnValue($uri)); $app = new HttpServer(static::getFixturesDirectory(), 'default', ['someext']); $response = $app->handle($mockRequest); if ($canHandle) { $this->assertEquals($status, $response->getStatusCode()); $this->assertEquals($content, $response->getContent()); if (null !== $contentType) { $this->assertEquals($contentType, $response->headers->get('Content-type')); } } else { $this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode()); } }
/** * {@inheritdoc} */ public function terminate(Request $request, Response $response) { parent::terminate($request, $response); if ($this->app instanceof TerminableInterface) { $this->app->terminate($request, $response); } }