set('services.exa', ['key' => 'test', 'base_url' => 'https://api.exa.ai', 'timeout_sec' => 90]); Http::fake(['api.exa.ai/*' => Http::response(['results' => [ ['url' => 'https://kraslombard24.ru/'], ['url' => 'https://2gis.ru/krasnoyarsk/firm/1'], ['url' => 'https://kraslombard24.ru/'], // дубль ]])]); $urls = (new FootprintSearch)->search(['КрасЛомбард Красноярск', 'kraslombard24.ru']); expect($urls)->toBe(['https://kraslombard24.ru/', 'https://2gis.ru/krasnoyarsk/firm/1']); }); it('пустой ключ EXA → пустой список, без единого запроса', function () { Http::fake(); config()->set('services.exa', ['key' => '']); expect((new FootprintSearch)->search(['x']))->toBe([]); Http::assertNothingSent(); });