Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions e2e/react-start/basic-prerender/.gitignore

This file was deleted.

24 changes: 0 additions & 24 deletions e2e/react-start/basic-prerender/package.json

This file was deleted.

48 changes: 0 additions & 48 deletions e2e/react-start/basic-prerender/playwright.config.ts

This file was deleted.

5 changes: 0 additions & 5 deletions e2e/react-start/basic-preview/.gitignore

This file was deleted.

24 changes: 0 additions & 24 deletions e2e/react-start/basic-preview/package.json

This file was deleted.

47 changes: 0 additions & 47 deletions e2e/react-start/basic-preview/playwright.config.ts

This file was deleted.

5 changes: 0 additions & 5 deletions e2e/react-start/basic-spa/.gitignore

This file was deleted.

24 changes: 0 additions & 24 deletions e2e/react-start/basic-spa/package.json

This file was deleted.

48 changes: 0 additions & 48 deletions e2e/react-start/basic-spa/playwright.config.ts

This file was deleted.

5 changes: 0 additions & 5 deletions e2e/react-start/basic-test-suite/.gitignore

This file was deleted.

12 changes: 0 additions & 12 deletions e2e/react-start/basic-test-suite/package.json

This file was deleted.

8 changes: 0 additions & 8 deletions e2e/react-start/basic-test-suite/src/utils/getBasicAppRoot.ts

This file was deleted.

1 change: 0 additions & 1 deletion e2e/react-start/basic-test-suite/src/utils/isPrerender.ts

This file was deleted.

1 change: 0 additions & 1 deletion e2e/react-start/basic-test-suite/src/utils/isPreview.ts

This file was deleted.

1 change: 0 additions & 1 deletion e2e/react-start/basic-test-suite/src/utils/isSpaMode.ts

This file was deleted.

18 changes: 0 additions & 18 deletions e2e/react-start/basic-test-suite/tsconfig.json

This file was deleted.

1 change: 1 addition & 0 deletions e2e/react-start/basic/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,4 @@ yarn.lock
/playwright-report/
/blob-report/
/playwright/.cache/
/dist-vite-*/
33 changes: 23 additions & 10 deletions e2e/react-start/basic/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,11 @@
"dev": "vite dev --port 3000",
"dev:e2e": "vite dev",
"build": "vite build && tsc --noEmit",
"build:spa": "MODE=spa vite build && tsc --noEmit",
"build:prerender": "MODE=prerender vite build && tsc --noEmit",
"preview": "vite preview",
"start": "node server.js",
"test:e2e:startDummyServer": "node -e 'import(\"../basic-test-suite/src/setup/global.setup.ts\").then(m => m.default())' & node -e 'import(\"../basic-test-suite/src/setup/waitForDummyServer.ts\").then(m => m.default())'",
"test:e2e:stopDummyServer": "node -e 'import(\"../basic-test-suite/src/setup/global.teardown.ts\").then(m => m.default())'",
"test:e2e": "rm -rf dist; rm -rf port*.txt; playwright test --project=chromium"
"test:e2e:startDummyServer": "node -e 'import(\"./tests/setup/global.setup.ts\").then(m => m.default())' & node -e 'import(\"./tests/setup/waitForDummyServer.ts\").then(m => m.default())'",
"test:e2e:stopDummyServer": "node -e 'import(\"./tests/setup/global.teardown.ts\").then(m => m.default())'",
"test:e2e:local": "playwright test --project=chromium"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

test:e2e:local no longer performs a build or port-file cleanup.

The previous test:e2e script removed dist/port*.txt and implicitly relied on the webServer.command's pnpm build && pnpm start to produce fresh artifacts. The new flow assumes the mode-specific Nx build target ran beforehand (which the plugin wires in) and that playwright.config.ts handles port-file cleanup via fs.rmSync.

If a dev invokes pnpm test:e2e:local directly for a non-SSR mode (e.g. MODE=prerender E2E_DIST_DIR=dist-vite-prerender pnpm test:e2e:local) without first running the matching build:e2e--vite-prerender Nx target, Playwright will silently serve stale or missing artifacts. Consider a short README/AGENTS note — or a test:e2e:local:<mode> alias invoking the Nx build+test pair — so the non-Nx path stays ergonomic.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@e2e/react-start/basic/package.json` at line 14, The test:e2e:local npm script
now only runs Playwright and can serve stale/missing artifacts if a matching Nx
build target (e.g., build:e2e--vite-prerender) wasn’t run first; update
package.json to add mode-aware convenience scripts or change test:e2e:local to
run the appropriate build+test sequence: detect MODE/E2E_DIST_DIR and invoke the
corresponding Nx build target (for example build:e2e--vite-prerender) before
running "playwright test --project=chromium", or add explicit
test:e2e:local:<mode> aliases that run "pnpm nx run <mode-specific-build> &&
pnpm test:e2e:local"; ensure any added script preserves the existing Playwright
cleanup behavior (playwright.config.ts uses fs.rmSync) so port-file/dist cleanup
still happens.

},
"dependencies": {
"@tanstack/react-router": "workspace:^",
Expand All @@ -31,7 +29,6 @@
"@playwright/test": "^1.50.1",
"@tailwindcss/vite": "^4.2.2",
"@tanstack/router-e2e-utils": "workspace:^",
"tanstack-react-start-e2e-basic-test-suite": "workspace:*",
"@types/js-cookie": "^3.0.6",
"@types/node": "^22.10.2",
"@types/react": "^19.0.8",
Expand All @@ -45,10 +42,26 @@
"zod": "^3.24.2"
},
"nx": {
"targets": {
"test:e2e": {
"parallelism": false
}
"metadata": {
"playwrightModes": [
{
"toolchain": "vite",
"mode": "ssr",
"shards": 4
},
{
"toolchain": "vite",
"mode": "spa"
},
{
"toolchain": "vite",
"mode": "prerender"
},
{
"toolchain": "vite",
"mode": "preview"
}
]
}
}
}
Loading
Loading