feat: add global device queue and readiness tracking
This commit is contained in:
1 parent
a62ac4aef1
commit
42b8988661
57 files changed
+3606
-716
No files matched your search
@@ -0,0 +1,51 @@
|
||||
from apps.admin_console.core.state import ServerState
|
||||
|
||||
|
||||
def test_startup_progress_is_ordered_and_upserted_by_stage():
|
||||
state = ServerState()
|
||||
|
||||
state.record_startup_progress(
|
||||
{
|
||||
"session_id": "session-1",
|
||||
"stage": "queued",
|
||||
"message": "Task queued",
|
||||
"timestamp": 1.0,
|
||||
}
|
||||
)
|
||||
state.record_startup_progress(
|
||||
{
|
||||
"session_id": "session-1",
|
||||
"stage": "device",
|
||||
"message": "Checking device",
|
||||
"timestamp": 2.0,
|
||||
}
|
||||
)
|
||||
state.record_startup_progress(
|
||||
{
|
||||
"session_id": "session-1",
|
||||
"stage": "device",
|
||||
"message": "Device connected",
|
||||
"timestamp": 3.0,
|
||||
}
|
||||
)
|
||||
|
||||
events = state.get_startup_progress("session-1")
|
||||
assert [event["stage"] for event in events] == ["queued", "device"]
|
||||
assert events[-1]["message"] == "Device connected"
|
||||
|
||||
|
||||
def test_startup_progress_snapshot_is_not_mutable_by_callers():
|
||||
state = ServerState()
|
||||
state.record_startup_progress(
|
||||
{
|
||||
"session_id": "session-1",
|
||||
"stage": "queued",
|
||||
"message": "Task queued",
|
||||
"timestamp": 1.0,
|
||||
}
|
||||
)
|
||||
|
||||
snapshot = state.get_startup_progress("session-1")
|
||||
snapshot[0]["message"] = "changed"
|
||||
|
||||
assert state.get_startup_progress("session-1")[0]["message"] == "Task queued"
|
||||
Reference in new issue
Block a user