36c3a7fe7f
По личным телефонам фирмы обратным поиском в 2ГИС вскрываем связанные карточки
холдинга (проекты застройщика) — забираем их сайты и телефоны, цепочкой «до талого».
Общий номер (у >4 фирм) пропускаем; visited-set + потолок карточек; уже известную
главную карточку не дублируем. Защита от AutoMoney: реклама отсечена парсером,
общий номер обрублен до разворота, находки не клеятся молча.
За тумблером AUTOPODBOR_PHONE_REVERSE (по умолчанию ВЫКЛ). Юнит 259/259, feature
146/146. Решение и план — в docs/superpowers/{findings,plans}/2026-07-05-*.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
21 lines
876 B
PHP
21 lines
876 B
PHP
<?php
|
|
|
|
use App\Services\Autopodbor\Agent\CompetitorAgent;
|
|
use App\Services\Autopodbor\Agent\RealCompetitorAgent;
|
|
use App\Services\Autopodbor\Agent\Study\DeepStudyCollector;
|
|
use App\Services\Autopodbor\Agent\Study\PhoneReverse;
|
|
|
|
it('при deep_study+phone_reverse в DeepStudyCollector проброшен реальный PhoneReverse', function () {
|
|
config()->set('autopodbor.deep_study', true);
|
|
config()->set('autopodbor.phone_reverse', true);
|
|
|
|
$agent = app(CompetitorAgent::class);
|
|
expect($agent)->toBeInstanceOf(RealCompetitorAgent::class);
|
|
|
|
$deep = (new ReflectionProperty(RealCompetitorAgent::class, 'deep'))->getValue($agent);
|
|
expect($deep)->toBeInstanceOf(DeepStudyCollector::class);
|
|
|
|
$reverse = (new ReflectionProperty(DeepStudyCollector::class, 'reverse'))->getValue($deep);
|
|
expect($reverse)->toBeInstanceOf(PhoneReverse::class);
|
|
});
|