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