feat: stabilize multi-region runtime sync and worker orchestration
This commit is contained in:
@@ -10,6 +10,35 @@ class OpsServiceActivityTests(unittest.TestCase):
|
||||
def _runtime_status(detect: Optional[dict] = None) -> dict:
|
||||
return {"detect": dict(detect or {})}
|
||||
|
||||
@patch("app.services.ops_service.get_ops_runbook", return_value={"control_sequences": []})
|
||||
@patch("app.services.ops_service.list_release_rollouts", return_value=[])
|
||||
@patch("app.services.ops_service.list_ops_jobs", return_value=[])
|
||||
@patch("app.services.ops_service.get_recent_ops_playbook_runs", return_value={"runs": []})
|
||||
@patch("app.services.ops_service.list_managed_nodes_with_agent_state", side_effect=AssertionError("should reuse managed nodes"))
|
||||
@patch("app.services.ops_service.get_runtime_status", side_effect=AssertionError("should reuse runtime status"))
|
||||
def test_activity_stream_reuses_provided_runtime_and_managed_snapshots(
|
||||
self,
|
||||
_mock_get_runtime_status,
|
||||
_mock_list_managed_nodes_with_agent_state,
|
||||
_mock_get_recent_ops_playbook_runs,
|
||||
_mock_list_ops_jobs,
|
||||
_mock_list_release_rollouts,
|
||||
mock_get_ops_runbook,
|
||||
) -> None:
|
||||
runtime_snapshot = self._runtime_status()
|
||||
managed_snapshot = {"nodes": []}
|
||||
payload = get_ops_activity_stream(
|
||||
limit=10,
|
||||
scan_limit=20,
|
||||
runtime_status=runtime_snapshot,
|
||||
managed_nodes_payload=managed_snapshot,
|
||||
)
|
||||
|
||||
self.assertEqual([], payload["items"])
|
||||
self.assertEqual(0, payload["summary"]["total"])
|
||||
self.assertEqual(runtime_snapshot, mock_get_ops_runbook.call_args.kwargs["runtime_status"])
|
||||
self.assertEqual(managed_snapshot, mock_get_ops_runbook.call_args.kwargs["managed_nodes_payload"])
|
||||
|
||||
@patch("app.services.ops_service.get_ops_runbook")
|
||||
@patch("app.services.ops_service.list_release_rollouts")
|
||||
@patch("app.services.ops_service.list_ops_jobs")
|
||||
|
||||
Reference in New Issue
Block a user