summaryrefslogtreecommitdiffhomepage
path: root/packages/app/e2e/session.spec.ts
diff options
context:
space:
mode:
authorAdam <[email protected]>2026-01-18 05:43:34 -0600
committerAdam <[email protected]>2026-01-19 09:03:52 -0600
commitdd19c3d8f2cfbb7d1b157bbe6f5a9a969cb6c239 (patch)
treec472127b923b308bae6619fde93e67210aaeb229 /packages/app/e2e/session.spec.ts
parentf5eb90514aca136e0aa2f48954f71d51b52e2b16 (diff)
downloadopencode-dd19c3d8f2cfbb7d1b157bbe6f5a9a969cb6c239.tar.gz
opencode-dd19c3d8f2cfbb7d1b157bbe6f5a9a969cb6c239.zip
test(app): e2e utilities
Diffstat (limited to 'packages/app/e2e/session.spec.ts')
-rw-r--r--packages/app/e2e/session.spec.ts21
1 files changed, 4 insertions, 17 deletions
diff --git a/packages/app/e2e/session.spec.ts b/packages/app/e2e/session.spec.ts
index e1ca12449..d44736a4f 100644
--- a/packages/app/e2e/session.spec.ts
+++ b/packages/app/e2e/session.spec.ts
@@ -1,22 +1,9 @@
import { test, expect } from "@playwright/test"
-import { createOpencodeClient } from "@opencode-ai/sdk/v2/client"
-import { base64Encode } from "@opencode-ai/util/encode"
-
-const host = process.env.PLAYWRIGHT_SERVER_HOST ?? "localhost"
-const port = process.env.PLAYWRIGHT_SERVER_PORT ?? "4096"
-const url = `http://${host}:${port}`
-
-async function getWorktree() {
- const sdk = createOpencodeClient({ baseUrl: url, throwOnError: true })
- const result = await sdk.path.get()
- const data = result.data
- if (!data?.worktree) throw new Error(`Failed to resolve a worktree from ${url}/path`)
- return data.worktree
-}
+import { createSdk, getWorktree, promptSelector, sessionPath } from "./utils"
test("can open an existing session and type into the prompt", async ({ page }) => {
const directory = await getWorktree()
- const sdk = createOpencodeClient({ baseUrl: url, directory, throwOnError: true })
+ const sdk = createSdk(directory)
const title = `e2e smoke ${Date.now()}`
const created = await sdk.session.create({ title }).then((r) => r.data)
@@ -24,9 +11,9 @@ test("can open an existing session and type into the prompt", async ({ page }) =
const sessionID = created.id
try {
- await page.goto(`/${base64Encode(directory)}/session/${sessionID}`)
+ await page.goto(sessionPath(directory, sessionID))
- const prompt = page.locator('[data-component="prompt-input"]')
+ const prompt = page.locator(promptSelector)
await expect(prompt).toBeVisible()
await prompt.click()