作者:omusic
项目:zf2-dem
public function testCreateService()
{
$controllerManager = new ControllerManager();
$controllerManager->setServiceLocator(Bootstrap::getServiceManager());
$result = $this->testedObj->createService($controllerManager);
$this->assertInstanceOf(UpdateController::class, $result);
}
作者:phpr
项目:zf-smartcru
/**
* @param \Zend\Mvc\Controller\ControllerManager $controllerManager
* @param \Zend\ServiceManager\ServiceLocatorInterface $serviceLocator
* @param array $routeParams
*/
protected function mockConfiguration($controllerManager, $serviceLocator, $routeParams = array('action' => 'list'))
{
$prophet = new Prophet();
$controllerKey = 'Phpro\\SmartCrud\\Controller\\CrudController';
$serviceKey = 'Phpro\\SmartCrud\\Service\\AbstractSmartService';
$viewBuilderKey = 'Phpro\\SmartCrud\\View\\Model\\ViewModelBuilder';
$controllerManager->getServiceLocator()->willReturn($serviceLocator);
// Mock config
$serviceLocator->has('Config')->willReturn(true);
$serviceLocator->get('Config')->willReturn(array(AbstractCrudControllerFactory::FACTORY_NAMESPACE => array('custom-controller' => array(AbstractCrudControllerFactory::CONFIG_CONTROLLER => $controllerKey, AbstractCrudControllerFactory::CONFIG_IDENTIFIER => 'id', AbstractCrudControllerFactory::CONFIG_SMART_SERVICE => $serviceKey), 'fault-controller' => array(AbstractCrudControllerFactory::CONFIG_CONTROLLER => 'invalid-controller'), 'fault-service' => array(AbstractCrudControllerFactory::CONFIG_SMART_SERVICE => 'invalid-service'))));
// Mock controller
$controller = $prophet->prophesize('\\Phpro\\SmartCrud\\Controller\\CrudController');
$controllerManager->has($controllerKey)->willReturn(true);
$controllerManager->get($controllerKey)->willReturn($controller);
$controllerManager->has('invalid-controller')->willReturn(false);
// Mock route
$this->mockRouteMatch($serviceLocator, $routeParams);
// Mock service
$serviceKey = $serviceKey . '::' . $routeParams['action'];
$service = $prophet->prophesize('\\Phpro\\SmartCrud\\Service\\AbstractSmartService');
$serviceLocator->has($serviceKey)->willReturn(true);
$serviceLocator->get($serviceKey)->willReturn($service);
$serviceLocator->has('invalid-service::' . $routeParams['action'])->willReturn(false);
$viewBuilder = $prophet->prophesize('\\Phpro\\SmartCrud\\View\\Model\\ViewModelBuilder');
$serviceLocator->has($viewBuilderKey)->willReturn(true);
$serviceLocator->get($viewBuilderKey)->willReturn($viewBuilder);
$this->setServiceLocator($serviceLocator);
}
作者:jkhale
项目:LearnZF
/**
* @return ServiceLocatorInterface
*
* @param array $data
*/
private function createServiceLocator(array $data = [])
{
$controllerManager = new ControllerManager();
$sm = new ServiceManager();
$sm->setService('Config', $data);
$controllerManager->setServiceLocator($sm);
return $controllerManager;
}
作者:samsonasi
项目:unname
/**
* {@inheritdoc}
*/
public function __invoke(ControllerManager $controllerManager)
{
$serviceLocator = $controllerManager->getServiceLocator();
/* @var \Zend\Authentication\AuthenticationService */
$doctrineAuthService = $serviceLocator->get('doctrine.authenticationservice.orm_default');
$controller = new LoginController($serviceLocator->get('FormElementManager')->get('SD\\Application\\Form\\LoginForm'), $doctrineAuthService);
return $controller;
}
作者:schmiddi
项目:zf2-wishlist-importe
public function __invoke(ControllerManager $container, $name, array $options = null)
{
/**
* @var $synchronizeDbAgainstAmazon SynchronizeDbAgainstAmazonInterface
*/
$synchronizeDbAgainstAmazon = $container->getServiceLocator()->get(SynchronizeDbAgainstAmazonInterface::class);
return new CliController($synchronizeDbAgainstAmazon);
}
作者:alapin
项目:apigility-3hr-tutoria
protected function setUp()
{
$this->factory = new AuthControllerFactory();
$this->services = $services = new ServiceManager();
$this->controllers = $controllers = new ControllerManager();
$controllers->setServiceLocator(new ServiceManager());
$controllers->getServiceLocator()->setService('ServiceManager', $services);
}
作者:dpoltoratsk
项目:ZfSimpleMigration
public function test_it_returns_a_controller()
{
$controller_manager = new ControllerManager();
$controller_manager->setServiceLocator($this->service_manager);
$factory = new MigrateControllerFactory();
$instance = $factory->createService($controller_manager);
$this->assertInstanceOf(MigrateController::class, $instance, "factory should return an instance of " . MigrateController::class);
}
作者:samsonasi
项目:unname
/**
* {@inheritdoc}
*/
public function __invoke(ControllerManager $controllerManager)
{
$serviceLocator = $controllerManager->getServiceLocator();
$themesConfig = $serviceLocator->get('getThemesFromDir');
$reloadService = $serviceLocator->get('reloadService');
$controller = new IndexController($themesConfig, $reloadService);
return $controller;
}
作者:interactive-solution
项目:zf-email-template-ap
public function __invoke(ControllerManager $manager) : EmailTemplateResourceController
{
$serviceLocator = $manager->getServiceLocator();
/* @var $repository TemplateRepository */
$repository = $serviceLocator->get(TemplateRepository::class);
/* @var $service TemplateService */
$service = $serviceLocator->get(TemplateService::class);
return new EmailTemplateResourceController($repository, $service);
}
作者:shitikovkiril
项目:zend-shop.co
public function testFactory()
{
$serviceManager = new ServiceManager();
$serviceManager->setService('HtImgModule\\Service\\ImageService', $this->getMock('HtImgModule\\Service\\ImageServiceInterface'));
$factory = new ImageControllerFactory();
$controllers = new ControllerManager();
$controllers->setServiceLocator($serviceManager);
$this->assertInstanceOf('HtImgModule\\Controller\\ImageController', $factory->createService($controllers));
}
作者:jkhale
项目:LearnZF
public function testCreateService()
{
$sm = new ServiceManager();
$sm->setService('Console', new Posix());
$sm->setService('Config', []);
$cm = new ControllerManager();
$cm->setServiceLocator($sm);
$controller = $this->factory->createService($cm);
$this->assertInstanceOf('Application\\Controller\\ConsoleController', $controller);
}
作者:dpoltoratsk
项目:ZfSimpleMigration
public function test_it_returns_a_skeleton_generator()
{
$controller_manager = new ControllerManager();
$controller_manager->setServiceLocator($this->service_manager);
$factory = new MigrationSkeletonGeneratorAbstractFactory();
$instance = $factory->createServiceWithName($controller_manager, 'migrations.skeletongenerator.foo', 'asdf');
$this->assertInstanceOf(MigrationSkeletonGenerator::class, $instance, "factory should return an instance of " . MigrationSkeletonGenerator::class . " when asked by \$name");
$instance2 = $factory->createServiceWithName($this->service_manager, 'asdf', 'migrations.skeletongenerator.foo');
$this->assertInstanceOf(MigrationSkeletonGenerator::class, $instance2, "factory should return an instance of " . MigrationSkeletonGenerator::class . " when asked by \$requestedName");
}
作者:patrickpreus
项目:Braintacl
/**
* Set up application config
*/
public function setUp()
{
parent::setUp();
$this->setTraceError(true);
$this->setApplicationConfig(\Library\Application::getService('ApplicationConfig'));
$this->_controllerManager = $this->getMock('Zend\\Mvc\\Controller\\ControllerManager');
$this->_controllerManager->expects($this->any())->method('has')->will($this->returnValue(true));
$this->_controllerManager->expects($this->any())->method('get')->will($this->returnCallback(array($this, 'createController')));
$this->getApplicationServiceLocator()->setAllowOverride(true)->setService('ControllerManager', $this->_controllerManager);
}
作者:alex-patterson-webde
项目:arp-aut
/**
* createService
*
* Create the authentication service.
*
* @param ControllerManager $controllerManager The controller manager.
* @param string $name The name of the service.
* @param string $requestedName The requested name of the service.
*
* @return LoginController
*/
public function __invoke(ControllerManager $controllerManager, $name, $requestedName)
{
/** @var ServiceManager $serviceManager */
$serviceManager = $controllerManager->getServiceLocator();
/** @todo We should create an object that holds the options */
$options = $this->getOptions($serviceManager, $requestedName);
$className = $options['class_name'];
$controller = new $className($this->getAuthenticationService($serviceManager, $options['auth_service']), $this->getRouteProvider($serviceManager, $options['route_provider']), $this->getFormProvider($serviceManager, $options['form_element_provider']), $this->getViewTemplateProvider($serviceManager, $options['view_template_provider']), isset($options['options']) && is_array($options['options']) ? $options['options'] : []);
return $controller;
}
作者:MehrAlsNi
项目:zf2-featureflag
protected function setUp()
{
$this->factory = new ToggleContextFactory();
$this->services = $services = new ServiceManager();
$this->services->setService('Config', ['zf2_featureflags' => ['qandidate_toggle' => ['persistence' => 'ToggleFeature\\InMemory', 'context_factory' => 'ToggleFeature\\UserContextFactory', 'redis_namespace' => null, 'redis_client' => null], 'features' => ['some-feature' => ['name' => 'toggling', 'conditions' => [['name' => 'operator-condition', 'key' => 'user_id', 'operator' => ['name' => 'greater-than', 'value' => 41]]], 'status' => 'conditionally-active']]]]);
$this->controllers = $controllers = new ControllerManager($this->services);
$controllers->setServiceLocator(new ServiceManager());
$controllers->getServiceLocator()->setService('ServiceManager', $services);
$this->setApplicationConfig(['modules' => ['MehrAlsNix\\FeatureToggle'], 'module_listener_options' => ['module_paths' => [__DIR__ . '/../../../'], 'config_glob_paths' => []], 'service_listener_options' => [], 'service_manager' => []]);
parent::setUp();
}
作者:gstearmi
项目:EshopVegeTabl
protected function setUp()
{
$this->factory = new AuthControllerFactory();
$this->services = $services = new ServiceManager();
$this->services->setService('Config', ['zf-oauth2' => ['api_problem_error_response' => true]]);
$this->controllers = $controllers = new ControllerManager();
$controllers->setServiceLocator(new ServiceManager());
$controllers->getServiceLocator()->setService('ServiceManager', $services);
$this->setApplicationConfig(['modules' => ['ZF\\OAuth2'], 'module_listener_options' => ['module_paths' => [__DIR__ . '/../../'], 'config_glob_paths' => []], 'service_listener_options' => [], 'service_manager' => []]);
parent::setUp();
}
作者:leonardovn8
项目:zf2_basic201
/**
* Create the controller loader service
*
* Creates and returns an instance of ControllerManager. The
* only controllers this manager will allow are those defined in the
* application configuration's "controllers" array. If a controller is
* matched, the scoped manager will attempt to load the controller.
* Finally, it will attempt to inject the controller plugin manager
* if the controller implements a setPluginManager() method.
*
* This plugin manager is _not_ peered against DI, and as such, will
* not load unknown classes.
*
* @param ServiceLocatorInterface $serviceLocator
* @return ControllerManager
*/
public function createService(ServiceLocatorInterface $serviceLocator)
{
$controllerLoader = new ControllerManager();
$controllerLoader->setServiceLocator($serviceLocator);
$controllerLoader->addPeeringServiceManager($serviceLocator);
$config = $serviceLocator->get('Config');
if (isset($config['di']) && isset($config['di']['allowed_controllers']) && $serviceLocator->has('Di')) {
$controllerLoader->addAbstractFactory($serviceLocator->get('DiStrictAbstractServiceFactory'));
}
return $controllerLoader;
}
作者:alex-oleshkevic
项目:zf2-annotated-route
public function setUp()
{
parent::setUp();
$this->serviceManager = new ServiceManager();
$controllerLoader = new ControllerManager();
$controllerLoader->setServiceLocator($this->serviceManager);
$this->serviceManager->setService('ControllerLoader', $controllerLoader);
$this->serviceManager->setFactory('AnnotatedRouter\\AnnotationManager', 'AnnotatedRouter\\Service\\AnnotationManagerFactory');
$this->serviceManager->setFactory('parser', 'AnnotatedRouter\\Service\\ControllerParserFactory');
$this->serviceManager->setService('Config', array('controllers' => array('invokables' => array('nobase' => 'AnnotatedRouterTest\\TestController\\NoBaseController', 'namespaced' => 'AnnotatedRouterTest\\TestController\\NamespacedController', 'noindexroute' => 'AnnotatedRouterTest\\TestController\\NoIndexRouteController', 'invalidrootroute' => 'AnnotatedRouterTest\\TestController\\InvalidRootRouteController', 'extends' => 'AnnotatedRouterTest\\TestController\\ExtendsController')), 'annotated_router' => array('compile_on_request' => true, 'cache_file' => 'data/cache/router.cache.php', 'use_cache' => true, 'annotations' => array('AnnotatedRouter\\Annotation\\Base', 'AnnotatedRouter\\Annotation\\Index', 'AnnotatedRouter\\Annotation\\Route')), 'router' => array('routes' => array('default' => array('type' => 'literal', 'options' => array('route' => '/'), 'child_routes' => array('help' => array('type' => 'literal', 'options' => array('route' => '/help'))))))));
}
作者:interactive-solution
项目:zf-user-messag
public function __invoke(ControllerManager $controllerManager) : NamedConversationRpcResource
{
$container = $controllerManager->getServiceLocator();
/* @var EntityManager $entityManager */
$entityManager = $container->get('InteractiveSolutions\\Message\\ObjectManager');
/* @var NamedConversationRepository $conversationRepository */
$conversationRepository = $entityManager->getRepository(NamedConversationEntity::class);
$userRepository = $entityManager->getRepository(MessageUserInterface::class);
/* @var ConversationService $conversationService */
$conversationService = $container->get(ConversationService::class);
return new NamedConversationRpcResource($conversationRepository, $userRepository, $conversationService);
}
作者:utrenkne
项目:YAWI
/**
*
*/
public function testCreateService()
{
$sm = clone Bootstrap::getServiceManager();
$sm->setAllowOverride(true);
$jobRepositoryMock = $this->getMockBuilder('Jobs\\Repository\\Job')->disableOriginalConstructor()->getMock();
$repositoriesMock = $this->getMockBuilder('Core\\Repository\\RepositoryService')->disableOriginalConstructor()->getMock();
$repositoriesMock->expects($this->once())->method('get')->with('Jobs/Job')->willReturn($jobRepositoryMock);
$sm->setService('repositories', $repositoriesMock);
$controllerManager = new ControllerManager();
$controllerManager->setServiceLocator($sm);
$result = $this->testedObj->createService($controllerManager);
$this->assertInstanceOf('Jobs\\Controller\\JobboardController', $result);
}