'org', '/maps/org/' => autopodborFixture('yandex-org-kraslombard.html'), ]); $agent = new ResolvingAgent(new CompetitorResolver($pages)); // 29 = Красноярский край (конституционный порядок RussianRegions) $res = $agent->resolve(new ResolveByNameRequest('КрасЛомбард', 29)); expect($res->candidates)->toHaveCount(1); $c = $res->candidates[0]; expect($c['name'])->toBe('КрасЛомбард'); expect($c['site_url'])->toBe('http://kraslombard24.ru'); expect($c['directory_urls'])->toContain('https://yandex.ru/maps/org/kraslombard/175852236692'); expect($c['description'])->toContain('Ломбард'); expect($c['is_federal'])->toBeFalse(); expect($c['provenance']['via'])->toBe('name-search'); }); it('resolveByName: имя не найдено → кандидат-заглушка «нет филиала» (без ссылок, не федерал)', function () { $agent = new ResolvingAgent(new CompetitorResolver(stubPages([]))); $res = $agent->resolve(new ResolveByNameRequest('Неведомая Фирма', 29)); expect($res->candidates)->toHaveCount(1); $c = $res->candidates[0]; expect($c['name'])->toBe('Неведомая Фирма'); expect($c['directory_urls'])->toBe([]); expect($c['site_url'])->toBeNull(); expect($c['is_federal'])->toBeFalse(); });