Example #1
0
 /**
  * @covers \Splot\Framework\Events\ControllerDidRespond::__construct
  * @covers \Splot\Framework\Events\ControllerDidRespond::getControllerResponse
  * @covers \Splot\Framework\Events\ControllerDidRespond::getControllerName
  * @covers \Splot\Framework\Events\ControllerDidRespond::getController
  * @covers \Splot\Framework\Events\ControllerDidRespond::getMethod
  * @covers \Splot\Framework\Events\ControllerDidRespond::getArguments
  * @covers \Splot\Framework\Events\ControllerDidRespond::getRequest
  */
 public function testControllerDidRespond()
 {
     $controllerResponse = new ControllerResponse('some response');
     $controller = new TestController(new Container());
     $arguments = array('id' => 123);
     $event = new Events\ControllerDidRespond($controllerResponse, 'SplotTestModule:TestController', $controller, 'index', $arguments);
     $this->assertSame($controllerResponse, $event->getControllerResponse());
     $this->assertEquals('SplotTestModule:TestController', $event->getControllerName());
     $this->assertSame($controller, $event->getController());
     $this->assertEquals('index', $event->getMethod());
     $this->assertEquals($arguments, $event->getArguments());
     $this->assertNull($event->getRequest());
 }
 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);
 }