diff --git a/packages/app/e2e/projects/workspace-new-session.spec.ts b/packages/app/e2e/projects/workspace-new-session.spec.ts index 0858f26273..31ba1098df 100644 --- a/packages/app/e2e/projects/workspace-new-session.spec.ts +++ b/packages/app/e2e/projects/workspace-new-session.spec.ts @@ -2,7 +2,7 @@ import type { Page } from "@playwright/test" import { test, expect } from "../fixtures" import { openSidebar, resolveSlug, sessionIDFromUrl, setWorkspacesEnabled, waitDir, waitSlug } from "../actions" import { promptSelector, workspaceItemSelector, workspaceNewSessionSelector } from "../selectors" -import { createSdk } from "../utils" +import { createSdk, dirDecode, dirSlug, resolveDirectory } from "../utils" function item(space: { slug: string; raw: string }) { return `${workspaceItemSelector(space.slug)}, ${workspaceItemSelector(space.raw)}` @@ -101,13 +101,13 @@ test("new sessions from sidebar workspace actions stay in selected workspace", a trackDirectory(second.directory) await waitWorkspaceReady(page, second) - const firstSession = await createSessionFromWorkspace(page, first.slug, `workspace one ${Date.now()}`) + const firstSession = await createSessionFromWorkspace(page, first, `workspace one ${Date.now()}`) trackSession(firstSession.sessionID, first.directory) - const secondSession = await createSessionFromWorkspace(page, second.slug, `workspace two ${Date.now()}`) + const secondSession = await createSessionFromWorkspace(page, second, `workspace two ${Date.now()}`) trackSession(secondSession.sessionID, second.directory) - const thirdSession = await createSessionFromWorkspace(page, first.slug, `workspace one again ${Date.now()}`) + const thirdSession = await createSessionFromWorkspace(page, first, `workspace one again ${Date.now()}`) trackSession(thirdSession.sessionID, first.directory) await expect.poll(() => sessionDirectory(first.directory, firstSession.sessionID)).toBe(first.directory) diff --git a/packages/app/e2e/projects/workspaces.spec.ts b/packages/app/e2e/projects/workspaces.spec.ts index 297cdb9fc9..22f09bc334 100644 --- a/packages/app/e2e/projects/workspaces.spec.ts +++ b/packages/app/e2e/projects/workspaces.spec.ts @@ -20,7 +20,7 @@ import { waitSlug, } from "../actions" import { dropdownMenuContentSelector, inlineInputSelector, workspaceItemSelector } from "../selectors" -import { createSdk, dirSlug } from "../utils" +import { createSdk, dirDecode, dirSlug } from "../utils" async function setupWorkspaceTest(page: Page, project: { slug: string }) { const rootSlug = project.slug @@ -258,7 +258,7 @@ test("can delete a workspace", async ({ page, withProject }) => { await clickMenuItem(menu, /^Delete$/i, { force: true }) await confirmDialog(page, /^Delete workspace$/i) - await expect.poll(() => base64Decode(slugFromUrl(page.url()))).toBe(project.directory) + await expect.poll(() => dirDecode(slugFromUrl(page.url()))).toBe(project.directory) await expect .poll( diff --git a/packages/app/e2e/utils.ts b/packages/app/e2e/utils.ts index f07a8d3f11..f2c3919f5c 100644 --- a/packages/app/e2e/utils.ts +++ b/packages/app/e2e/utils.ts @@ -1,5 +1,5 @@ import { createOpencodeClient } from "@opencode-ai/sdk/v2/client" -import { base64Encode, checksum } from "@opencode-ai/util/encode" +import { base64Decode, base64Encode, checksum } from "@opencode-ai/util/encode" export const serverHost = process.env.PLAYWRIGHT_SERVER_HOST ?? "127.0.0.1" export const serverPort = process.env.PLAYWRIGHT_SERVER_PORT ?? "4096" @@ -48,6 +48,10 @@ export function dirSlug(directory: string) { return base64Encode(directory) } +export function dirDecode(slug: string) { + return base64Decode(slug) +} + export function dirPath(directory: string) { return `/${dirSlug(directory)}` }