core/tests/test_workbench_schemas.py
Shay 8a24ebe726
feat(W-026): read-only workbench API (ADR-0160 Phase 1) (#292)
* feat(W-026): add read-only workbench API

* fix(workbench): harden read-only API review gaps
2026-05-26 10:16:35 -07:00

27 lines
858 B
Python

from __future__ import annotations
from workbench.schemas import RuntimeStatus, error, ok
def test_ok_envelope_contains_generated_at_and_data() -> None:
payload = ok(RuntimeStatus(
backend="numpy",
git_revision="abc123",
engine_state_present=False,
checkpoint_revision="unknown",
revision_warning=False,
active_session_id=None,
))
assert payload["ok"] is True
assert isinstance(payload["generated_at"], str)
assert payload["data"]["backend"] == "numpy"
assert payload["data"]["mutation_mode"] == "read_only"
def test_error_envelope_contains_generated_at_and_code() -> None:
payload = error("not_found", "missing")
assert payload["ok"] is False
assert isinstance(payload["generated_at"], str)
assert payload["error"] == {"code": "not_found", "message": "missing"}