import GuJumpgate snapshot from GitHub
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
import importlib.util
|
||||
import tempfile
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def load_hotmail_helper():
|
||||
module_path = Path(__file__).resolve().parents[1] / "scripts" / "hotmail_helper.py"
|
||||
spec = importlib.util.spec_from_file_location("hotmail_helper", module_path)
|
||||
module = importlib.util.module_from_spec(spec)
|
||||
spec.loader.exec_module(module)
|
||||
return module
|
||||
|
||||
|
||||
hotmail_helper = load_hotmail_helper()
|
||||
|
||||
|
||||
class HotmailHelperCliTest(unittest.TestCase):
|
||||
def test_normalize_server_port_uses_default_when_empty(self):
|
||||
self.assertEqual(hotmail_helper.normalize_server_port(None), 17373)
|
||||
self.assertEqual(hotmail_helper.normalize_server_port(""), 17373)
|
||||
|
||||
def test_normalize_server_port_validates_range(self):
|
||||
self.assertEqual(hotmail_helper.normalize_server_port("18080"), 18080)
|
||||
with self.assertRaises(ValueError):
|
||||
hotmail_helper.normalize_server_port("0")
|
||||
with self.assertRaises(ValueError):
|
||||
hotmail_helper.normalize_server_port("70000")
|
||||
|
||||
def test_resolve_server_config_reads_cli_and_environment(self):
|
||||
config = hotmail_helper.resolve_server_config(
|
||||
["--port", "18080"],
|
||||
environ={},
|
||||
)
|
||||
self.assertEqual(config["host"], "127.0.0.1")
|
||||
self.assertEqual(config["port"], 18080)
|
||||
|
||||
env_config = hotmail_helper.resolve_server_config(
|
||||
[],
|
||||
environ={"HOTMAIL_HELPER_HOST": "0.0.0.0", "HOTMAIL_HELPER_PORT": "19090"},
|
||||
)
|
||||
self.assertEqual(env_config["host"], "0.0.0.0")
|
||||
self.assertEqual(env_config["port"], 19090)
|
||||
|
||||
def test_save_local_cpa_json_creates_parent_dir_and_writes_content(self):
|
||||
with tempfile.TemporaryDirectory() as tmpdir:
|
||||
target = Path(tmpdir) / "plugin" / ".cli-proxy-api" / "codex-demo.json"
|
||||
saved_path = hotmail_helper.save_local_cpa_json(
|
||||
str(target),
|
||||
'{"type":"codex"}\n',
|
||||
str(target.parent),
|
||||
)
|
||||
self.assertEqual(saved_path, str(target))
|
||||
self.assertEqual(target.read_text(encoding="utf-8"), '{"type":"codex"}\n')
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user