From c3ef69c8664ab84464d720f75eb9bf35289c1847 Mon Sep 17 00:00:00 2001 From: Kit Langton Date: Thu, 2 Apr 2026 14:17:28 -0400 Subject: test(app): add a golden path for mocked e2e prompts (#20593) --- packages/app/src/testing/prompt.ts | 27 +++++++++++++++++++++++++++ packages/app/src/testing/terminal.ts | 1 + 2 files changed, 28 insertions(+) (limited to 'packages/app/src/testing') diff --git a/packages/app/src/testing/prompt.ts b/packages/app/src/testing/prompt.ts index e11462f30..5102ed825 100644 --- a/packages/app/src/testing/prompt.ts +++ b/packages/app/src/testing/prompt.ts @@ -10,6 +10,13 @@ export type PromptProbeState = { selects: number } +export type PromptSendState = { + started: number + count: number + sessionID?: string + directory?: string +} + export const promptEnabled = () => { if (typeof window === "undefined") return false return (window as E2EWindow).__opencode_e2e?.prompt?.enabled === true @@ -53,4 +60,24 @@ export const promptProbe = { if (!state) return state.current = undefined }, + start() { + const state = root() + if (!state) return + state.sent = { + started: (state.sent?.started ?? 0) + 1, + count: state.sent?.count ?? 0, + sessionID: state.sent?.sessionID, + directory: state.sent?.directory, + } + }, + submit(input: { sessionID: string; directory: string }) { + const state = root() + if (!state) return + state.sent = { + started: state.sent?.started ?? 0, + count: (state.sent?.count ?? 0) + 1, + sessionID: input.sessionID, + directory: input.directory, + } + }, } diff --git a/packages/app/src/testing/terminal.ts b/packages/app/src/testing/terminal.ts index 2bca39b31..db8001ddf 100644 --- a/packages/app/src/testing/terminal.ts +++ b/packages/app/src/testing/terminal.ts @@ -23,6 +23,7 @@ export type E2EWindow = Window & { prompt?: { enabled?: boolean current?: import("./prompt").PromptProbeState + sent?: import("./prompt").PromptSendState } terminal?: { enabled?: boolean -- cgit v1.2.3