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 =
array_merge(...
$providers);
$this->
assertEquals($sorted_providers,
$authentication_collector->
getSortedProviders());
// Test AuthenticationCollector::getProvider() and
// AuthenticationCollector::isGlobal().