diff options
| author | Luke Parker <[email protected]> | 2026-03-07 16:33:12 +1000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-03-07 16:33:12 +1000 |
| commit | 0b7a5b1e7bc7619c85e7cf4e30a1a0d4885779b6 (patch) | |
| tree | 6fcd11b17e890867a4c8d578452e90ed92fe7ffa /packages/app/e2e/AGENTS.md | |
| parent | 28bb16ca2a374439973d4f3f4b71d72f7fdae9cd (diff) | |
| download | opencode-0b7a5b1e7bc7619c85e7cf4e30a1a0d4885779b6.tar.gz opencode-0b7a5b1e7bc7619c85e7cf4e30a1a0d4885779b6.zip | |
test(app): abort sessions and wait for idle before e2e cleanup (#16439)
Diffstat (limited to 'packages/app/e2e/AGENTS.md')
| -rw-r--r-- | packages/app/e2e/AGENTS.md | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/packages/app/e2e/AGENTS.md b/packages/app/e2e/AGENTS.md index 59662dbea..f97838978 100644 --- a/packages/app/e2e/AGENTS.md +++ b/packages/app/e2e/AGENTS.md @@ -71,6 +71,9 @@ test("test description", async ({ page, sdk, gotoSession }) => { - `closeDialog(page, dialog)` - Close any dialog - `openSidebar(page)` / `closeSidebar(page)` - Toggle sidebar - `withSession(sdk, title, callback)` - Create temp session +- `withProject(...)` - Create temp project/workspace +- `trackSession(sessionID, directory?)` - Register session for fixture cleanup +- `trackDirectory(directory)` - Register directory for fixture cleanup - `clickListItem(container, filter)` - Click list item by key/text **Selectors** (`selectors.ts`): @@ -109,7 +112,7 @@ import { test, expect } from "@playwright/test" ### Error Handling -Tests should clean up after themselves: +Tests should clean up after themselves. Prefer fixture-managed cleanup: ```typescript test("test with cleanup", async ({ page, sdk, gotoSession }) => { @@ -120,6 +123,11 @@ test("test with cleanup", async ({ page, sdk, gotoSession }) => { }) ``` +- Prefer `withSession(...)` for temp sessions +- In `withProject(...)` tests that create sessions or extra workspaces, call `trackSession(sessionID, directory?)` and `trackDirectory(directory)` +- This lets fixture teardown abort, wait for idle, and clean up safely under CI concurrency +- Avoid calling `sdk.session.delete(...)` directly + ### Timeouts Default: 60s per test, 10s per assertion. Override when needed: |
