"""Проверки восстановления доменов с разными дефенгами."""

from __future__ import annotations

from ioc_checker.iocs.text_parser import TextIOCParser


def test_domain_with_bracketed_dots() -> None:
    """Домен с записями [.] должен нормализоваться в обычный вид."""

    parser = TextIOCParser()
    results = parser.parse("В списке указан домен alerts[.]security[.]com")

    assert len(results) == 1
    indicator = results[0].indicator
    assert indicator.category == "domain"
    assert indicator.value == "alerts.security.com"


def test_domain_with_dot_wording() -> None:
    """Дефенг с (dot) также должен приводить к валидному домену."""

    parser = TextIOCParser()
    results = parser.parse("Активность зафиксирована на host(dot)data(dot)org")

    assert len(results) == 1
    indicator = results[0].indicator
    assert indicator.category == "domain"
    assert indicator.value == "host.data.org"
