Files
oh-my-opencode/src/hooks/ralph-loop/completion-promise-detector-test-input.test.ts
T

25 lines
799 B
TypeScript
Raw Normal View History

/// <reference types="bun-types" />
import type { PluginInput } from "@opencode-ai/plugin"
2026-05-12 15:38:31 +09:00
import { unsafeTestValue } from "../../../test-support/unsafe-test-value"
export type SessionMessage = {
info?: { role?: string }
parts?: Array<{ type: string; text?: string }>
}
export function createPluginInput(messages: SessionMessage[]): PluginInput {
const pluginInput = {
client: { session: {} } as PluginInput["client"],
project: {} as PluginInput["project"],
directory: "/tmp",
worktree: "/tmp",
serverUrl: new URL("http://localhost"),
$: {} as PluginInput["$"],
} as PluginInput
2026-05-12 15:38:31 +09:00
const messagesFunction = unsafeTestValue<PluginInput["client"]["session"]["messages"]>(async () => ({ data: messages }))
pluginInput.client.session.messages = messagesFunction
return pluginInput
}