All checks were successful
Zapret source guards / validate (push) Successful in 3s
Apex googlevideo.com — не видеосервер, его прямая проверка всегда падает.
Сканер стратегий теперь при старте подставляет свежий rr*-хост через
существующий discovery (при неудаче — понятная ошибка вместо ложных FAIL),
а в пользовательские домены BlockCheck голый googlevideo.com не добавляется:
InfoBar объясняет, что актуальный видеосервер проверяется автоматически.
Сохранённый ранее apex пропускается при сборке целей.
Попутно починены импорты удалённого targets._normalize_domain (f88541fa):
добавление пользовательского домена падало с ImportError, а нормализация
цели сканера не срезала схему https://. Оба места переведены на hosts.host_of.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
"""Голый googlevideo.com распознаётся во всех формах записи."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import sys
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
|
|
PROJECT_SRC = Path(__file__).resolve().parents[1] / "src"
|
|
if str(PROJECT_SRC) not in sys.path:
|
|
sys.path.insert(0, str(PROJECT_SRC))
|
|
|
|
from blockcheck.googlevideo_discovery import is_bare_googlevideo_host # noqa: E402
|
|
|
|
|
|
class BareGoogleVideoHostTests(unittest.TestCase):
|
|
def test_bare_hosts_detected(self) -> None:
|
|
for value in (
|
|
"googlevideo.com",
|
|
"www.googlevideo.com",
|
|
"https://googlevideo.com",
|
|
"https://googlevideo.com/watch?v=1",
|
|
"GOOGLEVIDEO.COM.",
|
|
"googlevideo.com:443",
|
|
):
|
|
with self.subTest(value=value):
|
|
self.assertTrue(is_bare_googlevideo_host(value))
|
|
|
|
def test_real_video_and_service_hosts_pass(self) -> None:
|
|
for value in (
|
|
"rr5---sn-c0q7lnz7.googlevideo.com",
|
|
"redirector.googlevideo.com",
|
|
"youtube.com",
|
|
"",
|
|
None,
|
|
):
|
|
with self.subTest(value=value):
|
|
self.assertFalse(is_bare_googlevideo_host(value))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|