test(cli): split the incomplete-fleet-restart hint tests per host
Once the launchd file carried the macos_only marker, the first real macOS lane run showed TestIncompleteWarningMentionsLaunchctl asserting the systemd-host branch (kickstart hint, systemctl line) that never runs on macOS. The two Linux-arm tests move to their own linux_only file; the launchd file keeps the macOS arm (bootstrap/list hint, no systemctl).
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
"""Incomplete-fleet-restart hint on a systemd host (Linux arm of
|
||||
``_warn_incomplete_gateway_fleet_restart``; the macOS arm lives in
|
||||
test_update_launchd_fleet_restart.py). Regression for #111866: this class used to
|
||||
sit in the launchd file, where it asserted the non-macOS branch under a faked
|
||||
``is_macos()`` — green on Linux, never run on macOS, wrong on both."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import pytest
|
||||
|
||||
from hermes_cli.update_cmd_fleet import _warn_incomplete_gateway_fleet_restart
|
||||
|
||||
pytestmark = pytest.mark.linux_only
|
||||
|
||||
|
||||
def test_launchd_labels_get_launchctl_hint(capsys):
|
||||
_warn_incomplete_gateway_fleet_restart(["ai.hermes.gateway-merit-ops"])
|
||||
out = capsys.readouterr().out
|
||||
assert "Update incomplete" in out
|
||||
assert "launchctl kickstart -k" in out
|
||||
|
||||
|
||||
def test_systemd_units_keep_systemctl_hint(capsys):
|
||||
_warn_incomplete_gateway_fleet_restart(["hermes-gateway-coder"])
|
||||
out = capsys.readouterr().out
|
||||
assert "systemctl" in out
|
||||
assert "launchctl" not in out
|
||||
@@ -640,15 +640,13 @@ class TestWaitForLaunchdServicePid:
|
||||
)
|
||||
|
||||
|
||||
class TestIncompleteWarningMentionsLaunchctl:
|
||||
def test_launchd_labels_get_launchctl_hint(self, capsys):
|
||||
class TestIncompleteWarningOnMacos:
|
||||
"""On the launchd host the hint is bootstrap/list, never the systemd or the
|
||||
``kickstart`` line — a label in this list is likely deregistered (#88848)."""
|
||||
|
||||
def test_launchd_labels_get_bootstrap_hint(self, capsys):
|
||||
_warn_incomplete_gateway_fleet_restart(["ai.hermes.gateway-merit-ops"])
|
||||
out = capsys.readouterr().out
|
||||
assert "Update incomplete" in out
|
||||
assert "launchctl kickstart -k" in out
|
||||
|
||||
def test_systemd_units_keep_systemctl_hint(self, capsys):
|
||||
_warn_incomplete_gateway_fleet_restart(["hermes-gateway-coder"])
|
||||
out = capsys.readouterr().out
|
||||
assert "systemctl" in out
|
||||
assert "launchctl" not in out
|
||||
assert "launchctl bootstrap" in out
|
||||
assert "systemctl" not in out
|
||||
|
||||
Reference in New Issue
Block a user