test(client): typecheck browser registration
This commit is contained in:
parent
0ebce16396
commit
9721f7ab8b
1 changed files with 37 additions and 0 deletions
37
packages/client/test/types/node-consumer.ts
Normal file
37
packages/client/test/types/node-consumer.ts
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
import {
|
||||
Browser,
|
||||
BrowserDriver,
|
||||
BrowserDriverError,
|
||||
OpenCode,
|
||||
type BrowserAttachment,
|
||||
type BrowserRegistration,
|
||||
} from "@opencode-ai/client/node"
|
||||
|
||||
const state: Browser.State = {
|
||||
url: "about:blank",
|
||||
title: "",
|
||||
loading: false,
|
||||
canGoBack: false,
|
||||
canGoForward: false,
|
||||
generation: 0,
|
||||
}
|
||||
|
||||
const driver = BrowserDriver.define<{ readonly proxyURL: string }>((context) => ({
|
||||
resource: { proxyURL: context.proxy.url },
|
||||
state: () => state,
|
||||
subscribe: () => () => undefined,
|
||||
execute: async (_command, options) => {
|
||||
throw new BrowserDriverError(options.signal.aborted ? "aborted" : "internal", "Command unavailable")
|
||||
},
|
||||
dispose: () => undefined,
|
||||
}))
|
||||
|
||||
declare const client: ReturnType<typeof OpenCode.make>
|
||||
const registration: Promise<BrowserRegistration> = client.browser.register({
|
||||
sessionID: "ses_type_fixture",
|
||||
open: () => undefined,
|
||||
})
|
||||
void registration.then((handle) => {
|
||||
const attachment: Promise<BrowserAttachment<{ readonly proxyURL: string }>> = handle.attach({ driver })
|
||||
void attachment
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue