FOF30\Factory\MagicSwitchFactory::controller PHP Méthode

controller() public méthode

Create a new Controller object
public controller ( string $viewName, array $config = [] ) : Controller
$viewName string The name of the view we're getting a Controller for.
$config array Optional MVC configuration values for the Controller object.
Résultat FOF30\Controller\Controller
    public function controller($viewName, array $config = array())
    {
        try {
            return parent::controller($viewName, $config);
        } catch (ControllerNotFound $e) {
            $magic = new Magic\ControllerFactory($this->container);
            // Let's pass the section override (if any)
            $magic->setSection($this->getSection());
            return $magic->make($viewName, $config);
        }
    }

Usage Example

 /**
  * @group           MagicSwitchFactory
  * @covers          FOF30\Factory\MagicSwitchFactory::controller
  * @dataProvider    MagicSwitchFactoryDataprovider::getTestController
  */
 public function testController($test, $check)
 {
     $msg = 'MagicSwitchFactory::controller %s - Case: ' . $check['case'];
     $factory = new MagicSwitchFactory(static::$container);
     $result = $factory->controller($test['view']);
     $this->assertEquals($check['result'], get_class($result), sprintf($msg, 'Returned the wrong result'));
 }