|
|
|
|
@ -215,6 +215,28 @@ class SearchComposerTest extends TestCase {
|
|
|
|
|
$this->assertEmpty($providers);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testGetProvidersWithMixedOrderValues(): void {
|
|
|
|
|
$providerConfigs = [
|
|
|
|
|
'provider1' => ['service' => 'provider1_service', 'appId' => 'app1', 'order' => 100],
|
|
|
|
|
'provider2' => ['service' => 'provider2_service', 'appId' => 'app2', 'order' => 1],
|
|
|
|
|
'provider3' => ['service' => 'provider3_service', 'appId' => 'app3', 'order' => 50],
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
$mockData = $this->createMockProvidersAndRegistrations($providerConfigs);
|
|
|
|
|
$this->setupRegistrationContextWithProviders($mockData['registrations']);
|
|
|
|
|
$this->setupAppConfigForAllowedProviders();
|
|
|
|
|
|
|
|
|
|
$providers = $this->searchComposer->getProviders('/test/route', []);
|
|
|
|
|
|
|
|
|
|
$this->assertCount(3, $providers);
|
|
|
|
|
$this->assertProvidersAreSortedByOrder($providers);
|
|
|
|
|
|
|
|
|
|
// Verify correct ordering: provider2 (1), provider3 (50), provider1 (100)
|
|
|
|
|
$this->assertEquals('provider2', $providers[0]['id']);
|
|
|
|
|
$this->assertEquals('provider3', $providers[1]['id']);
|
|
|
|
|
$this->assertEquals('provider1', $providers[2]['id']);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testProviderIconGeneration(): void {
|
|
|
|
|
$providerConfigs = [
|
|
|
|
|
'provider1' => ['service' => 'provider1_service', 'appId' => 'app1', 'order' => 10],
|
|
|
|
|
|