|
|
@@ -720,7 +720,12 @@ def run(ctx):
|
|
|
check(log_state.get("exists") is True and int(log_state["task_id"]) == dash_run,
|
|
|
"the event log page state names the run task")
|
|
|
log_html = http_get_page(auth, "/tasks/%d/log" % dash_run)
|
|
|
- check("EventSource" in log_html and "events/stream" in log_html,
|
|
|
+ # The log page's client JS ships as a compiled resource (plan 17
|
|
|
+ # b3+), so the SSE subscription is asserted on the served resource
|
|
|
+ # the page references, not the page HTML itself.
|
|
|
+ status, log_js = http("GET", "/_statum/resource/task_log.js", timeout=15)
|
|
|
+ check(status == 200 and "task_log.js" in log_html
|
|
|
+ and "EventSource" in log_js and "events/stream" in log_js,
|
|
|
"the log page subscribes to the task's SSE stream")
|
|
|
run_detail = task_state(auth, dash_run)
|
|
|
check(run_detail.get("is_goal_run") is True and run_detail.get("mode") == "orchestrate",
|
|
|
@@ -757,7 +762,7 @@ def run(ctx):
|
|
|
task_page_html = http_get_page(auth, "/tasks/%d" % keeper)
|
|
|
check("saddle comment" not in task_page_html,
|
|
|
"the task page never shows the command echo")
|
|
|
- check(task_page_html.index('stm-text="comment.body"')
|
|
|
+ check(task_page_html.index('stm-markdown="comment.body"')
|
|
|
< task_page_html.index('stm-text="comment.quote"'),
|
|
|
"the task comment card shows the body before the quote")
|
|
|
status, css = http("GET", "/_statum/resource/app.css", timeout=15)
|
|
|
@@ -905,10 +910,11 @@ def run(ctx):
|
|
|
"select name from sqlite_master"
|
|
|
" where type = 'index' and tbl_name = 'events'").fetchall()}
|
|
|
conn.close()
|
|
|
- check([s[0] for s in serials] == [1, 2, 3],
|
|
|
- "the clanker-saddle namespace carries exactly serials 1, 2 and 3"
|
|
|
- " (a fresh boot ran M0001 then the M0002 no-op then M0003)")
|
|
|
- check(len(serials) == 3,
|
|
|
+ check([s[0] for s in serials] == [1, 2, 3, 4, 5],
|
|
|
+ "the clanker-saddle namespace carries exactly serials 1 through 5"
|
|
|
+ " (a fresh boot ran M0001 then the M0002 no-op then M0003,"
|
|
|
+ " M0004 understandings and M0005 discoveries)")
|
|
|
+ check(len(serials) == 5,
|
|
|
"no duplicate migration rows (each guarded up() applied once)")
|
|
|
check({"idx_events_scope", "idx_events_terminal"} <= event_indexes,
|
|
|
"M0003's event reader indexes exist (fresh boot)")
|