summaryrefslogtreecommitdiffhomepage
path: root/packages/app/e2e/projects/projects-switch.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/projects-switch.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/projects-switch.spec.ts')
-rw-r--r--packages/app/e2e/projects/projects-switch.spec.ts34
1 files changed, 34 insertions, 0 deletions
diff --git a/packages/app/e2e/projects/projects-switch.spec.ts b/packages/app/e2e/projects/projects-switch.spec.ts
new file mode 100644
index 000000000..829ed8e57
--- /dev/null
+++ b/packages/app/e2e/projects/projects-switch.spec.ts
@@ -0,0 +1,34 @@
+import { test, expect } from "../fixtures"
+import { defocus, createTestProject, seedProjects, cleanupTestProject } from "../actions"
+import { projectSwitchSelector } from "../selectors"
+import { dirSlug } from "../utils"
+
+test("can switch between projects from sidebar", async ({ page, directory, gotoSession }) => {
+ await page.setViewportSize({ width: 1400, height: 800 })
+
+ const other = await createTestProject()
+ const otherSlug = dirSlug(other)
+
+ await seedProjects(page, { directory, extra: [other] })
+
+ try {
+ await gotoSession()
+
+ await defocus(page)
+
+ const currentSlug = dirSlug(directory)
+ const otherButton = page.locator(projectSwitchSelector(otherSlug)).first()
+ await expect(otherButton).toBeVisible()
+ await otherButton.click()
+
+ await expect(page).toHaveURL(new RegExp(`/${otherSlug}/session`))
+
+ const currentButton = page.locator(projectSwitchSelector(currentSlug)).first()
+ await expect(currentButton).toBeVisible()
+ await currentButton.click()
+
+ await expect(page).toHaveURL(new RegExp(`/${currentSlug}/session`))
+ } finally {
+ await cleanupTestProject(other)
+ }
+})