Files
Dorod-Sky/tests/unit_tests/test_internal_auth.py

36 lines
991 B
Python
Raw Normal View History

from starlette.requests import Request
from skyvern.forge.sdk.routes.internal_auth import _is_local_request
def _make_request(host: str | None) -> Request:
scope = {
"type": "http",
"client": (host, 12345) if host else None,
"headers": [],
"method": "GET",
"path": "/",
"scheme": "http",
}
return Request(scope)
def test_is_local_request_returns_false_for_public_ip() -> None:
request = _make_request("8.8.8.8") # public IPv4 address
assert _is_local_request(request) is False
def test_is_local_request_accepts_loopback() -> None:
request = _make_request("127.0.0.1")
assert _is_local_request(request) is True
def test_is_local_request_accepts_private_networks() -> None:
request = _make_request("192.168.1.20")
assert _is_local_request(request) is True
def test_is_local_request_handles_missing_client() -> None:
request = _make_request(None)
assert _is_local_request(request) is False