Download packages/app/e2e/regression/prompt-input-v2-command-draft.spec.ts from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 1.78 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/app/e2e/regression/prompt-input-v2-command-draft.spec.ts
- Command line
-
hf download hf://SaylorTwift/opencode/packages/app/e2e/regression/prompt-input-v2-command-draft.spec.ts
-
curl -L -o prompt-input-v2-command-draft.spec.ts https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/app/e2e/regression/prompt-input-v2-command-draft.spec.ts
1.78 kB
| import { expect, test } from "@playwright/test" | |
| import { base64Encode } from "@opencode-ai/core/util/encode" | |
| import { mockOpenCodeServer } from "../utils/mock-server" | |
| import { expectAppVisible } from "../utils/waits" | |
| const directory = "C:/OpenCode/PromptInputV2Editing" | |
| const projectID = "proj_prompt_input_v2_editing" | |
| const sessionID = "ses_prompt_input_v2_editing" | |
| test("preserves the draft when a populated command menu triggers a built-in", async ({ page }) => { | |
| await mockOpenCodeServer(page, { | |
| directory, | |
| project: { | |
| id: projectID, | |
| worktree: directory, | |
| vcs: "git", | |
| name: "prompt-input-v2-editing", | |
| time: { created: 1700000000000, updated: 1700000000000 }, | |
| sandboxes: [], | |
| }, | |
| provider: { all: [], connected: [], default: {} }, | |
| sessions: [ | |
| { | |
| id: sessionID, | |
| slug: "prompt-input-v2-editing", | |
| projectID, | |
| directory, | |
| title: "Prompt input V2 editing", | |
| version: "dev", | |
| time: { created: 1700000000000, updated: 1700000000000 }, | |
| }, | |
| ], | |
| pageMessages: () => ({ items: [] }), | |
| }) | |
| await page.addInitScript(() => { | |
| localStorage.setItem("settings.v3", JSON.stringify({ general: { newLayoutDesigns: true } })) | |
| }) | |
| await page.goto(`/${base64Encode(directory)}/session/${sessionID}`) | |
| const composer = page.locator('[data-component="prompt-input-v2"]') | |
| const input = composer.locator('[data-component="prompt-input"]') | |
| await expectAppVisible(composer) | |
| await input.fill("keep me") | |
| await composer.getByRole("button", { name: "Add images and files" }).click() | |
| await page.getByRole("menuitem", { name: "Commands" }).click() | |
| await page.locator('[data-suggestion-id="model.choose"]').click() | |
| await expect(input).toHaveText("keep me") | |
| }) | |