mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-30 01:41:43 +00:00
Rewrite all import statements, patch() targets, sys.modules keys, importlib.import_module() strings, and subprocess -m references to use hermes_agent.* paths. Strip sys.path.insert hacks from production code (rely on editable install). Update COMPONENT_PREFIXES for logger filtering. Fix 3 hardcoded getLogger() calls to use __name__. Update transport and tool registry discovery paths. Update plugin module path strings. Add legacy process-name patterns for gateway PID detection. Add main() to skills_sync for console_script entry point. Fix _get_bundled_dir() path traversal after move. Part of #14182, #14183
21 lines
654 B
Python
21 lines
654 B
Python
"""Regression tests for invalid/None terminal command handling."""
|
|
|
|
import json
|
|
|
|
from hermes_agent.tools.terminal import _transform_sudo_command, terminal_tool
|
|
|
|
|
|
def test_transform_sudo_command_none_returns_cleanly():
|
|
transformed, sudo_stdin = _transform_sudo_command(None)
|
|
|
|
assert transformed is None
|
|
assert sudo_stdin is None
|
|
|
|
|
|
def test_terminal_tool_none_command_returns_clean_error():
|
|
result = json.loads(terminal_tool(None)) # type: ignore[arg-type]
|
|
|
|
assert result["exit_code"] == -1
|
|
assert result["status"] == "error"
|
|
assert "expected string" in result["error"].lower()
|
|
assert "nonetype" in result["error"].lower()
|