{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/crawler\/tests\/unit\/domain\/test_link_classifier.py",
"content": "from __future__ import annotations\n\nfrom src.domain.services.link_classifier import LinkClassifier\nfrom src.domain.value_objects.normalized_url import normalize\n\n\ndef test_same_domain_is_internal() -> None:\n classifier = LinkClassifier(registered_domain=\"campus-am-see.de\")\n assert classifier.is_internal(normalize(\"https:\/\/campus-am-see.de\/x\"))\n\n\ndef test_subdomain_is_internal() -> None:\n classifier = LinkClassifier(registered_domain=\"campus-am-see.de\")\n assert classifier.is_internal(normalize(\"https:\/\/sub.campus-am-see.de\/x\"))\n\n\ndef test_unrelated_domain_is_external() -> None:\n classifier = LinkClassifier(registered_domain=\"campus-am-see.de\")\n assert classifier.is_external(normalize(\"https:\/\/other.example\/x\"))\n\n\ndef test_extra_hosts_are_internal() -> None:\n classifier = LinkClassifier(\n registered_domain=\"campus-am-see.de\",\n extra_internal_hosts=frozenset({\"cdn.partner.example\"}),\n )\n assert classifier.is_internal(normalize(\"https:\/\/cdn.partner.example\/a\"))\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/crawler\/tests\/unit\/domain\/test_link_classifier.py",
"content": "from __future__ import annotations\n\nfrom src.domain.services.link_classifier import LinkClassifier\nfrom src.domain.value_objects.normalized_url import normalize\n\n\ndef test_same_domain_is_internal() -> None:\n classifier = LinkClassifier(registered_domain=\"campus-am-see.de\")\n assert classifier.is_internal(normalize(\"https:\/\/campus-am-see.de\/x\"))\n\n\ndef test_subdomain_is_internal() -> None:\n classifier = LinkClassifier(registered_domain=\"campus-am-see.de\")\n assert classifier.is_internal(normalize(\"https:\/\/sub.campus-am-see.de\/x\"))\n\n\ndef test_unrelated_domain_is_external() -> None:\n classifier = LinkClassifier(registered_domain=\"campus-am-see.de\")\n assert classifier.is_external(normalize(\"https:\/\/other.example\/x\"))\n\n\ndef test_extra_hosts_are_internal() -> None:\n classifier = LinkClassifier(\n registered_domain=\"campus-am-see.de\",\n extra_internal_hosts=frozenset({\"cdn.partner.example\"}),\n )\n assert classifier.is_internal(normalize(\"https:\/\/cdn.partner.example\/a\"))\n",
"structuredPatch": [],
"originalFile": null,
"userModified": false
}
}