Example #1
0
 public function configure()
 {
     $configuration = $this->loader->load();
     $config = new Config($this, $this->console);
     if (isset($configuration['providers'])) {
         foreach ($configuration['providers'] as $provider) {
             $config->configureProvider($provider);
         }
     }
     if (isset($configuration['settings'])) {
         $config->configureSettings($configuration['settings']);
     }
     if (isset($configuration['routes'])) {
         foreach ($configuration['routes'] as $routeName => $route) {
             $config->configureRoute($route, $routeName);
         }
     }
     if (isset($configuration['services'])) {
         foreach ($configuration['services'] as $serviceName => $service) {
             $config->configureService($serviceName, $service);
         }
     }
     if ($this->console != null && isset($configuration['console'])) {
         $consoleSettings = $configuration['console'];
         if (isset($consoleSettings['commands']) && is_array($consoleSettings['commands'])) {
             foreach ($consoleSettings['commands'] as $commandSetting) {
                 $config->configureCommand($commandSetting);
             }
         }
     }
 }
Example #2
0
 /**
  * test a route flagged as debug = true IS registered when $app['debug'] == true
  */
 public function testDebugRouteIsRegistered()
 {
     $routeName = 'test';
     $routeSettings = array('route' => '/', 'controller' => 'Skip\\Test\\Helper\\TestServiceProvider::testAction', 'debug' => true);
     $mockController = $this->getMockBuilder('Silex\\Controller')->disableOriginalConstructor()->setMethods(array('method', 'bind', 'value', 'assert', 'convert', 'before', 'after'))->getMock();
     $mockController->expects($this->once())->method('bind')->will($this->returnCallback(function ($name) use($routeName) {
         $this->assertEquals($routeName, $name);
     }));
     $mockApplication = $this->getMockBuilder('Skip\\WebApplication')->disableOriginalConstructor()->getMock();
     $mockApplication->expects($this->once())->method('offsetGet')->will($this->returnCallback(function () {
         return true;
     }));
     $mockApplication->expects($this->once())->method('match')->will($this->returnCallback(function ($routePath, $controller) use($routeSettings, $mockController) {
         $this->assertEquals($routePath, $routeSettings['route']);
         $this->assertEquals($controller, $routeSettings['controller']);
         return $mockController;
     }));
     $mockApplication['debug'] = true;
     $config = new Config($mockApplication);
     $config->configureRoute($routeSettings, $routeName);
 }