. */ declare(strict_types=1); namespace App\Services\InfoProviderSystem\Providers; use App\Services\InfoProviderSystem\DTOs\FileDTO; use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; use App\Services\InfoProviderSystem\DTOs\SearchResultDTO; use Symfony\Component\DependencyInjection\Attribute\When; /** * This is a provider, which is used during tests. It always returns no results. */ #[When(env: 'test')] class EmptyProvider implements InfoProviderInterface { public function getProviderInfo(): array { return [ 'name' => 'Empty Provider', 'description' => 'This is a test provider', //'url' => 'https://example.com', 'disabled_help' => 'This provider is disabled for testing purposes' ]; } public function getProviderKey(): string { return 'empty'; } public function isActive(): bool { return true; } public function searchByKeyword(string $keyword): array { return [ ]; } public function getCapabilities(): array { return [ ProviderCapabilities::BASIC, ProviderCapabilities::FOOTPRINT, ]; } public function getDetails(string $id): PartDetailDTO { throw new \RuntimeException('No part details available'); } }