/**
  * 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;
 }