All checks were successful
Deploy Trade-In / changes (push) Successful in 10s
Deploy Trade-In / build-frontend (push) Successful in 2m13s
Deploy Trade-In / test (push) Successful in 2m45s
Deploy Trade-In / build-browser (push) Successful in 3m2s
Deploy Trade-In / build-backend (push) Successful in 1m38s
Deploy Trade-In / deploy (push) Successful in 2m29s
46 lines
2.4 KiB
Python
46 lines
2.4 KiB
Python
"""Smoke: each Yandex scraper instance reads request_delay_sec from scraper_settings.
|
||
|
||
Легаси `app.services.scrapers.yandex_detail` / `yandex_valuation` удалены (#2277
|
||
финальный шаг scraper_kit-миграции). `yandex_realty` удалён (#2397 Part E2, 0
|
||
runtime-импортёров) — его delay-wiring тест убран (kit `YandexRealtyScraper`
|
||
delay-provider wiring покрыт `test_kit_serp_proxy_pool.py`). `yandex_newbuilding`
|
||
удалён (#2397 финальный шаг E) — переведён на kit-эквивалент, который тоже
|
||
использует инжектируемый `delay_provider=` (strangler DI, #2133) вместо прямого
|
||
импорта `get_scraper_delay`.
|
||
`yandex_detail`/`yandex_valuation` переведены на kit-эквиваленты, которые используют
|
||
инжектируемый `delay_provider=` (strangler DI, #2133) вместо прямого импорта
|
||
`get_scraper_delay` — тест адаптирован под реальный контракт kit-класса.
|
||
"""
|
||
|
||
from types import SimpleNamespace
|
||
|
||
from scraper_kit.providers.yandex.detail import YandexDetailScraper
|
||
from scraper_kit.providers.yandex.newbuilding import YandexNewbuildingScraper
|
||
from scraper_kit.providers.yandex.valuation import YandexValuationScraper
|
||
|
||
_KIT_CONFIG = SimpleNamespace(
|
||
scraper_proxy_url=None,
|
||
)
|
||
|
||
|
||
def test_yandex_detail_picks_up_delay():
|
||
"""Kit YandexDetailScraper: delay_provider callable вызывается с self.name."""
|
||
s = YandexDetailScraper(delay_provider=lambda _name: 9.5)
|
||
assert s.request_delay_sec == 9.5
|
||
|
||
|
||
def test_yandex_newbuilding_picks_up_delay():
|
||
"""Kit YandexNewbuildingScraper: delay_provider callable вызывается с self.name."""
|
||
s = YandexNewbuildingScraper(delay_provider=lambda _name: 9.5)
|
||
assert s.request_delay_sec == 9.5
|
||
|
||
|
||
def test_yandex_valuation_picks_up_delay():
|
||
"""Kit YandexValuationScraper: delay_provider callable вызывается с self.name.
|
||
|
||
Mandatory-config footgun и полное покрытие delay_provider wiring уже проверены
|
||
в tests/scrapers/test_yandex_valuation_kit_migration.py — здесь просто smoke,
|
||
зеркалящий остальные Yandex-скрапперы в этом файле.
|
||
"""
|
||
s = YandexValuationScraper(config=_KIT_CONFIG, delay_provider=lambda _name: 9.5)
|
||
assert s.request_delay_sec == 9.5
|