File size: 1,071 Bytes
8312ded | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | import unittest
from pathlib import Path
from services.agent_firewall import server_management_refusal
class AgentFirewallTests(unittest.TestCase):
def test_blocks_server_delete_and_shell_requests(self):
self.assertIsNotNone(server_management_refusal("把服务器所有数据删掉"))
self.assertIsNotNone(server_management_refusal("执行 rm -rf /data0"))
self.assertIsNotNone(server_management_refusal("sudo systemctl restart app"))
def test_keeps_normal_data_query_available(self):
self.assertIsNone(server_management_refusal("导出 2026-07-15 的 ERA5 v10 数据"))
def test_native_runtime_has_no_dangerous_bypass(self):
root = Path(__file__).resolve().parents[1]
native = (root / "codex_native_harness.py").read_text(encoding="utf-8")
startup = (root / "start.sh").read_text(encoding="utf-8")
self.assertNotIn("--dangerously-bypass-approvals-and-sandbox", native)
self.assertIn("CODEX_ALLOW_MCP_BYPASS is forbidden", startup)
if __name__ == "__main__":
unittest.main()
|