mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-05-03 02:11:48 +00:00
feat(gateway): restart manual profile gateways after update
This commit is contained in:
parent
84324d06b8
commit
77fe7ab6b2
4 changed files with 150 additions and 8 deletions
|
|
@ -392,6 +392,41 @@ class TestCmdUpdateLaunchdRestart:
|
|||
captured = capsys.readouterr().out
|
||||
assert "Restart manually: hermes gateway run" in captured
|
||||
|
||||
@patch("shutil.which", return_value=None)
|
||||
@patch("subprocess.run")
|
||||
def test_update_restarts_profile_manual_gateways(
|
||||
self, mock_run, _mock_which, mock_args, capsys, tmp_path, monkeypatch,
|
||||
):
|
||||
"""Profile-mapped manual gateways are relaunched automatically after update."""
|
||||
monkeypatch.setattr(gateway_cli, "is_macos", lambda: True)
|
||||
monkeypatch.setattr(
|
||||
gateway_cli,
|
||||
"get_launchd_plist_path",
|
||||
lambda: tmp_path / "ai.hermes.gateway.plist",
|
||||
)
|
||||
|
||||
mock_run.side_effect = _make_run_side_effect(
|
||||
commit_count="3",
|
||||
launchctl_loaded=False,
|
||||
)
|
||||
process = gateway_cli.ProfileGatewayProcess(
|
||||
profile="coder",
|
||||
path=tmp_path / ".hermes" / "profiles" / "coder",
|
||||
pid=12345,
|
||||
)
|
||||
|
||||
with patch.object(gateway_cli, "find_gateway_pids", return_value=[12345]), \
|
||||
patch.object(gateway_cli, "find_profile_gateway_processes", return_value=[process]), \
|
||||
patch.object(gateway_cli, "launch_detached_profile_gateway_restart", return_value=True) as restart, \
|
||||
patch("os.kill") as kill:
|
||||
cmd_update(mock_args)
|
||||
|
||||
captured = capsys.readouterr().out
|
||||
restart.assert_called_once_with("coder", 12345)
|
||||
kill.assert_called_once()
|
||||
assert "Restarting manual gateway profile(s): coder" in captured
|
||||
assert "Restart manually: hermes gateway run" not in captured
|
||||
|
||||
@patch("shutil.which", return_value=None)
|
||||
@patch("subprocess.run")
|
||||
def test_update_with_systemd_still_restarts_via_systemd(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue