/**
  * @param string $controllerName
  * @return array
  */
 protected function createDummyRequestAndResponseForFluxController($controllerName = 'Content')
 {
     /** @var Request $request */
     $request = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Mvc\\Web\\Request');
     $request->setControllerExtensionName('Flux');
     $request->setControllerActionName($this->defaultAction);
     $request->setControllerName($controllerName);
     $request->setControllerObjectName(ResolveUtility::resolveFluxControllerClassNameByExtensionKeyAndAction($this->extensionName, $this->defaultAction, $controllerName));
     $request->setFormat('html');
     /** @var Response $response */
     $response = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Mvc\\Web\\Response');
     return array($request, $response);
 }
 /**
  * @param string $extensionName
  * @param string $controllerName
  * @param string $actionName
  * @return boolean
  */
 protected function hasSubControllerActionOnForeignController($extensionName, $controllerName, $actionName)
 {
     $potentialControllerClassName = ResolveUtility::resolveFluxControllerClassNameByExtensionKeyAndAction($extensionName, $actionName, $controllerName);
     $isForeign = $extensionName !== $this->extensionName;
     $isValidController = class_exists($potentialControllerClassName);
     return TRUE === $isForeign && TRUE === $isValidController;
 }
예제 #3
0
 /**
  * @test
  */
 public function canDetectControllerClassPresenceFromExtensionKeyAndControllerTypeWithVendorNameWhenClassDoesNotExist()
 {
     $result = ResolveUtility::resolveFluxControllerClassNameByExtensionKeyAndAction('Void.NoName', 'render', 'Void');
     $this->assertNull($result);
 }
 /**
  * @test
  */
 public function canDetectPresenceOfRegisteredCustomControllerForContent()
 {
     $this->performDummyRegistration();
     $hasController = ResolveUtility::resolveFluxControllerClassNameByExtensionKeyAndAction('FluidTYPO3.Flux', 'render', 'Content');
     $this->assertTrue(class_exists($hasController));
 }