diff --git a/packages/client/test-runtime/src/sessions.ts b/packages/client/test-runtime/src/sessions.ts index 59dd7d9186..c43a25b777 100644 --- a/packages/client/test-runtime/src/sessions.ts +++ b/packages/client/test-runtime/src/sessions.ts @@ -237,6 +237,20 @@ export class TestSessions implements ISessions { await this.stabilize(() => { record.snapshot.update(mutate) }) } + /** + * Update a session's list row (the wire-echo stand-in: title settles, + * running flips — components subscribed via useSessions re-render). + * @param id - session id. + * @param patch - summary fields to merge over the row. + */ + async updateSummary(id: string, patch: Partial>): Promise { + const record = this.require(id) + record.summary = { ...record.summary, ...patch } + await this.stabilize(() => { + this.list.update((draft) => { draft.byId[id as SessionId] = record.summary }) + }) + } + /** * Switch the current selection (undefined = the no-session empty state). * @param id - session id to select, or undefined to clear.