示例#1
0
文件: AppTest.php 项目: ppi/framework
 private function setupAppMocks($app, $mockRouter, $mockControllerResolver)
 {
     $sm = new ServiceManager();
     $sm->setAllowOverride(true);
     $sm->set('Router', $mockRouter);
     $sm->set('ControllerResolver', $mockControllerResolver);
     $app->setServiceManager($sm);
     return $app;
 }
示例#2
0
 public function testDispatch()
 {
     $app = new AppForDispatchTest(array('environment' => 'test', 'debug' => true, 'rootDir' => __DIR__));
     $mockRouter = $this->getMockBuilder('PPI\\Framework\\Router\\ChainRouter')->disableOriginalConstructor()->getMock();
     $mockRouter->expects($this->once())->method('warmUp');
     $mockRouter->expects($this->once())->method('matchRequest')->willReturn(array('_controller' => 'TestController'));
     $mockControllerResolver = $this->getMockBuilder('PPI\\Framework\\Module\\Controller\\ControllerResolver')->disableOriginalConstructor()->getMock();
     $mockControllerResolver->expects($this->once())->method('getController')->willReturnCallback(function () {
         return function () {
             return new Response('Working Response');
         };
     });
     $mockControllerResolver->expects($this->once())->method('getArguments')->willReturn(array());
     $sm = new ServiceManager();
     $sm->setAllowOverride(true);
     $sm->set('Router', $mockRouter);
     $sm->set('ControllerResolver', $mockControllerResolver);
     $app->setServiceManager($sm);
     $request = HttpRequest::createFromGlobals();
     $response = new HttpResponse();
     $response = $app->dispatch($request, $response);
     $this->assertInstanceOf('\\Symfony\\Component\\HttpFoundation\\Response', $response);
     $this->assertEquals($response->getContent(), 'Working Response');
 }