/** * Verifies that `registerViaProvider` event is triggered during registration process with GitHub account * in ScnSocialAuth module as prevention against regression. * * @link https://github.com/zendframework/modules.zendframework.com/pull/286 */ public function testEventIsTriggered() { $triggered = false; $eventManager = new EventManager(); $eventManager->attach('registerViaProvider', function () use(&$triggered) { $triggered = true; }); $mapper = $this->getMockBuilder('ZfcUser\\Mapper\\UserInterface')->getMockForAbstractClass(); $hybridAuth = new HybridAuth(); $hybridAuth->setEventManager($eventManager); $hybridAuth->setServiceManager($this->serviceManager); $hybridAuth->setZfcUserMapper($mapper); $class = new ReflectionClass($hybridAuth); $method = $class->getMethod('githubToLocalUser'); $method->setAccessible(true); $method->invokeArgs($hybridAuth, [new Hybrid_User_Profile()]); $this->assertTrue($triggered); }
public function createService(ServiceLocatorInterface $services) { $moduleOptions = $services->get('ScnSocialAuth-ModuleOptions'); $zfcUserOptions = $services->get('zfcuser_module_options'); $mapper = $services->get('ScnSocialAuth-UserProviderMapper'); $zfcUserMapper = $services->get('zfcuser_user_mapper'); $adapter = new HybridAuthAdapter(); $adapter->setOptions($moduleOptions); $adapter->setZfcUserOptions($zfcUserOptions); $adapter->setMapper($mapper); $adapter->setZfcUserMapper($zfcUserMapper); return $adapter; }