summaryrefslogtreecommitdiffhomepage
path: root/packages/app/e2e/projects/project-edit.spec.ts
diff options
context:
space:
mode:
authorFilip <[email protected]>2026-01-30 21:59:37 +0100
committeropencode <[email protected]>2026-01-30 21:06:48 +0000
commit77fa8ddc8828b5ebcc306621e6669c192d1492fe (patch)
tree000f7d4194a86e0198d0047e24c527fffda55ecb /packages/app/e2e/projects/project-edit.spec.ts
parent4a56491e42c07e30b95238a06c9b9175e4763444 (diff)
downloadopencode-77fa8ddc8828b5ebcc306621e6669c192d1492fe.tar.gz
opencode-77fa8ddc8828b5ebcc306621e6669c192d1492fe.zip
refactor(app): refactored tests + added project tests (#11349)
Diffstat (limited to 'packages/app/e2e/projects/project-edit.spec.ts')
-rw-r--r--packages/app/e2e/projects/project-edit.spec.ts47
1 files changed, 47 insertions, 0 deletions
diff --git a/packages/app/e2e/projects/project-edit.spec.ts b/packages/app/e2e/projects/project-edit.spec.ts
new file mode 100644
index 000000000..22d053f3d
--- /dev/null
+++ b/packages/app/e2e/projects/project-edit.spec.ts
@@ -0,0 +1,47 @@
+import { test, expect } from "../fixtures"
+import { openSidebar } from "../actions"
+
+test("dialog edit project updates name and startup script", async ({ page, gotoSession }) => {
+ await gotoSession()
+ await page.setViewportSize({ width: 1400, height: 800 })
+
+ await openSidebar(page)
+
+ const open = async () => {
+ const header = page.locator(".group\\/project").first()
+ await header.hover()
+ const trigger = header.getByRole("button", { name: "More options" }).first()
+ await expect(trigger).toBeVisible()
+ await trigger.click({ force: true })
+
+ await page.getByRole("menuitem", { name: "Edit" }).click()
+
+ const dialog = page.getByRole("dialog")
+ await expect(dialog).toBeVisible()
+ await expect(dialog.getByRole("heading", { level: 2 })).toHaveText("Edit project")
+ return dialog
+ }
+
+ const name = `e2e project ${Date.now()}`
+ const startup = `echo e2e_${Date.now()}`
+
+ const dialog = await open()
+
+ const nameInput = dialog.getByLabel("Name")
+ await nameInput.fill(name)
+
+ const startupInput = dialog.getByLabel("Workspace startup script")
+ await startupInput.fill(startup)
+
+ await dialog.getByRole("button", { name: "Save" }).click()
+ await expect(dialog).toHaveCount(0)
+
+ const header = page.locator(".group\\/project").first()
+ await expect(header).toContainText(name)
+
+ const reopened = await open()
+ await expect(reopened.getByLabel("Name")).toHaveValue(name)
+ await expect(reopened.getByLabel("Workspace startup script")).toHaveValue(startup)
+ await reopened.getByRole("button", { name: "Cancel" }).click()
+ await expect(reopened).toHaveCount(0)
+})