/** * @covers \Splot\Framework\Events\ControllerDidRespond::__construct * @covers \Splot\Framework\Events\ControllerDidRespond::getRequest */ public function testControllerDidRespondToRequest() { $controllerResponse = new ControllerResponse('some response'); $controller = new TestController(new Container()); $request = Request::create('/test/'); $event = new Events\ControllerDidRespond($controllerResponse, 'SplotTestModule:TestController', $controller, 'index', array(), $request); $this->assertSame($event->getRequest(), $request); }
public function onControllerDidRespond(ControllerDidRespond $event) { $request = $event->getRequest(); if (!is_object($request) || !$request instanceof Request) { return; } $controllerResponse = $event->getControllerResponse(); $response = $controllerResponse->getResponse(); if (!is_array($response) || !$request->isXmlHttpRequest()) { return; } $ajaxResponse = $this->transform($response); $controllerResponse->setResponse($ajaxResponse); }