Ejemplo n.º 1
0
 /**
  * Tests adding, getting, and order of priorities.
  *
  * @covers ::addProvider
  * @covers ::getSortedProviders
  * @covers ::getProvider
  * @covers ::isGlobal
  */
 public function testAuthenticationCollector()
 {
     $providers = [];
     $global = [];
     $authentication_collector = new AuthenticationCollector();
     $priorities = [2, 0, -8, 10, 1, 3, -5, 0, 6, -10, -4];
     foreach ($priorities as $priority) {
         $provider_id = $this->randomMachineName();
         $provider = new TestAuthenticationProvider($provider_id);
         $providers[$priority][$provider_id] = $provider;
         $global[$provider_id] = rand(0, 1) > 0.5;
         $authentication_collector->addProvider($provider, $provider_id, $priority, $global[$provider_id]);
     }
     // Sort the $providers array by priority (highest number is lowest priority)
     // and compare with AuthenticationCollector::getSortedProviders().
     krsort($providers);
     // Merge nested providers from $providers into $sorted_providers.
     $sorted_providers = [];
     foreach ($providers as $providers_priority) {
         $sorted_providers = array_merge($sorted_providers, $providers_priority);
     }
     $this->assertEquals($sorted_providers, $authentication_collector->getSortedProviders());
     // Test AuthenticationCollector::getProvider() and
     // AuthenticationCollector::isGlobal().
     foreach ($sorted_providers as $provider) {
         $this->assertEquals($provider, $authentication_collector->getProvider($provider->providerId));
         $this->assertEquals($global[$provider->providerId], $authentication_collector->isGlobal($provider->providerId));
     }
 }
Ejemplo n.º 2
0
 /**
  * @covers ::applyFilter
  */
 public function testApplyFilterWithFilterprovider()
 {
     $auth_provider = $this->getMock('Drupal\\Tests\\Core\\Authentication\\TestAuthenticationProviderInterface');
     $auth_provider->expects($this->once())->method('appliesToRoutedRequest')->willReturn(TRUE);
     $authentication_collector = new AuthenticationCollector();
     $authentication_collector->addProvider($auth_provider, 'filtered', 0);
     $authentication_manager = new AuthenticationManager($authentication_collector);
     $request = new Request();
     $this->assertTrue($authentication_manager->appliesToRoutedRequest($request, FALSE));
 }