Files

61 lines
1.9 KiB
Python

from __future__ import annotations
import unittest
from ampbrowser.routing import route_url
class RouteUrlTest(unittest.TestCase):
def test_defaults_plain_host_to_https_clearnet(self) -> None:
route = route_url("wownero.org")
self.assertEqual("https://wownero.org", route.normalized)
self.assertEqual("clearnet", route.transport)
self.assertEqual("clearnet", route.profile)
def test_routes_onion_hosts_to_tor(self) -> None:
route = route_url("http://example.onion/")
self.assertEqual("tor", route.transport)
self.assertEqual("tor", route.profile)
def test_routes_i2p_hosts_to_i2p(self) -> None:
route = route_url("http://example.b32.i2p/")
self.assertEqual("i2p", route.transport)
self.assertEqual("i2p", route.profile)
def test_routes_gemini_scheme(self) -> None:
route = route_url("gemini://wownero.org/")
self.assertEqual("gemini", route.transport)
self.assertEqual("gemini", route.profile)
def test_routes_ipfs_scheme(self) -> None:
route = route_url("ipfs://bafyexample")
self.assertEqual("ipfs", route.transport)
self.assertEqual("ipfs", route.profile)
def test_routes_ipns_scheme(self) -> None:
route = route_url("ipns://wownero.example")
self.assertEqual("ipfs", route.transport)
self.assertEqual("ipfs", route.profile)
def test_routes_ipfs_gateway_path(self) -> None:
route = route_url("/ipfs/bafyexample")
self.assertEqual("ipfs://bafyexample", route.normalized)
self.assertEqual("ipfs", route.transport)
def test_routes_reticulum_family_scheme(self) -> None:
route = route_url("rns://wownero")
self.assertEqual("reticulum", route.transport)
self.assertEqual("reticulum", route.profile)
if __name__ == "__main__":
unittest.main()