mirror of
https://github.com/Such-Software/adaptive-multi-protocol-browser.git
synced 2026-10-17 14:31:46 +02:00
31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
from __future__ import annotations
|
|
|
|
import unittest
|
|
|
|
from ampbrowser.adapters import ADAPTERS, adapter_for
|
|
from ampbrowser.transports import inspect_transport
|
|
|
|
|
|
class AdaptersTest(unittest.TestCase):
|
|
def test_known_adapters_are_registered(self) -> None:
|
|
self.assertEqual({"tor", "i2p", "reticulum", "gemini"}, set(ADAPTERS))
|
|
|
|
def test_gemini_adapter_is_builtin_ready(self) -> None:
|
|
status = inspect_transport("gemini")
|
|
|
|
self.assertIsNotNone(status)
|
|
self.assertTrue(status.installed)
|
|
self.assertTrue(status.running)
|
|
self.assertTrue(status.adoptable)
|
|
|
|
def test_tor_adapter_setup_steps_respect_ownership_language(self) -> None:
|
|
adapter = adapter_for("tor")
|
|
|
|
self.assertIsNotNone(adapter)
|
|
self.assertEqual("stop only AMPB-owned Tor daemon", adapter.stop_policy)
|
|
self.assertEqual(("install Tor provider", "start managed Tor daemon", "wait for socks5://127.0.0.1:9050"), adapter.setup_steps(installed=False, platform="desktop"))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|