public function getServiceConfig() { return array('initializers' => array(function ($instance, $sm) { if ($instance instanceof Service\AuthorizeAwareInterface) { $instance->setAuthorizeService($sm->get('BjyAuthorize\\Service\\Authorize')); } }), 'factories' => array('BjyAuthorize\\Service\\Authorize' => 'BjyAuthorize\\Service\\AuthorizeFactory', 'BjyAuthorize\\Provider\\Identity\\ZfcUserZendDb' => function ($sm) { $adapter = $sm->get('zfcuser_zend_db_adapter'); $provider = new Provider\Identity\ZfcUserZendDb($adapter); $provider->setUserService($sm->get('zfcuser_user_service')); return $provider; }, 'BjyAuthorize\\Provider\\Identity\\ZfcUserDoctrine' => function ($sm) { $em = $sm->get('doctrine.entitymanager.orm_default'); $provider = new Provider\Identity\ZfcUserDoctrine($em); $provider->setUserService($sm->get('zfcuser_user_service')); return $provider; }, 'BjyAuthorize\\View\\UnauthorizedStrategy' => function ($sm) { $template = $sm->get('BjyAuthorize\\Service\\Authorize')->getTemplate(); $strategy = new View\UnauthorizedStrategy(); $strategy->setTemplate($template); return $strategy; }, 'BjyAuthorize\\Provider\\Role\\ZendDb' => function ($sm) { $provider = new Provider\Role\ZendDb(); $provider->setAdapter($sm->get('Zend\\Db\\Adapter\\Adapter')); return $provider; }, 'BjyAuthorize\\Provider\\Role\\Doctrine' => function ($sm) { $provider = new Provider\Role\Doctrine(); return $provider; })); }
/** * @covers \BjyAuthorize\Provider\Role\ZendDb::getRoles */ public function testGetRolesWithInheritance() { $this->tableGateway->expects($this->any())->method('selectWith')->will($this->returnValue(array(array('id' => 1, 'role_id' => 'guest', 'is_default' => 1, 'parent_id' => null), array('id' => 2, 'role_id' => 'user', 'is_default' => 0, 'parent_id' => 1)))); $this->serviceLocator->expects($this->any())->method('get')->will($this->returnValue($this->tableGateway)); $provider = new ZendDb(array(), $this->serviceLocator); $this->assertEquals($provider->getRoles(), array(new Role('guest'), new Role('user', 'guest'))); }
/** * @param array $options * @param \Zend\ServiceManager\ServiceLocatorInterface $serviceLocator */ public function __construct($options, ServiceLocatorInterface $serviceLocator) { parent::__construct($options, $serviceLocator); if (isset($options['identifier_field'])) { $this->idFieldName = $options['identifier_field']; } }