test: exclude screenshot-gen from default E2E run; wire pdf-server tests#537
Merged
test: exclude screenshot-gen from default E2E run; wire pdf-server tests#537
Conversation
Bug 1: generate-grid-screenshots.spec.ts was running on every CI E2E invocation because playwright.config.ts had no testIgnore. This spec writes examples/*/grid-cell.png as a side effect — it's meant to be invoked only via npm run generate:screenshots. Added testIgnore gated on GENERATE_SCREENSHOTS env var (Playwright's testIgnore is stronger than explicit CLI file args, so a plain ignore would break generate:screenshots). Passed the env var through the docker invocation in generate:screenshots. Before: npx playwright test --list → 82 tests in 3 files After: npx playwright test --list → 65 tests in 2 files GENERATE_SCREENSHOTS=1 ... --list → 17 tests in 1 file (still works) Bug 2: examples/pdf-server/server.test.ts (448 LOC, 34 tests) was never run — root script was 'bun test src'. Changed to 'bun test src examples'. Only one .test. file exists in examples/ so no noise. Before: npm test → 87 pass across 3 files After: npm test → 121 pass across 4 files
@modelcontextprotocol/ext-apps
@modelcontextprotocol/server-basic-preact
@modelcontextprotocol/server-basic-react
@modelcontextprotocol/server-basic-solid
@modelcontextprotocol/server-basic-svelte
@modelcontextprotocol/server-basic-vanillajs
@modelcontextprotocol/server-basic-vue
@modelcontextprotocol/server-budget-allocator
@modelcontextprotocol/server-cohort-heatmap
@modelcontextprotocol/server-customer-segmentation
@modelcontextprotocol/server-debug
@modelcontextprotocol/server-map
@modelcontextprotocol/server-pdf
@modelcontextprotocol/server-scenario-modeler
@modelcontextprotocol/server-shadertoy
@modelcontextprotocol/server-sheet-music
@modelcontextprotocol/server-system-monitor
@modelcontextprotocol/server-threejs
@modelcontextprotocol/server-transcript
@modelcontextprotocol/server-video-resource
@modelcontextprotocol/server-wiki-explorer
commit: |
jonathanhefner
approved these changes
Mar 6, 2026
ochafik
added a commit
that referenced
this pull request
Mar 10, 2026
Changes since 1.2.0: - fix: bundle SDK+zod in react-with-deps (was byte-identical to ./react) (#539) - fix(build): copy schema.json to dist and externalize zod (#534) - fix: skip debug log for high-frequency tool-input-partial notifications (#546) - fix(deps): drop @hono/node-server override to patch GHSA-wc8c-qw6v-h7f6 (#535) - fix(readme): use picture element for theme-aware logo (#545) - fix(ci): require maintainer association for /update-snapshots trigger (#532) - fix: pre-commit stages only originally-staged files; add .npmrc (#538) - ci: use npm ci with caching, validate typedoc links, align Node versions (#533) - test: exclude screenshot-gen from default E2E run; wire pdf-server tests (#537)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bug 1: Screenshot-generation spec runs on every CI E2E invocation
tests/e2e/generate-grid-screenshots.spec.tsis meant to be run only vianpm run generate:screenshots. Butplaywright.config.tshadtestDir: "./tests/e2e"with notestIgnore, so it ran in the CI E2E job on every push, writingexamples/*/grid-cell.pngas a side effect.Fix: Added
testIgnoregated onGENERATE_SCREENSHOTSenv var. Note: Playwright'stestIgnoreis stronger than explicit CLI file arguments — a plain ignore would have brokennpm run generate:screenshots(verified: 0 tests found). The env var is passed through the docker invocation.playwright test --listdiffGENERATE_SCREENSHOTS=1 npx playwright test tests/e2e/generate-grid-screenshots.spec.ts --list→ 17 tests in 1 file (docker path still works)Bug 2:
examples/pdf-server/server.test.tsnever runsRoot
package.jsonhad"test": "bun test src"— the 448-LOC pdf-server test file was orphaned.Fix: Changed to
"test": "bun test src examples". Verified only one.test.file exists underexamples/, so no accidental noise pickup. Tests were verified passing standalone before wiring.npm testdiffFiles changed
playwright.config.ts— added conditionaltestIgnore(+7 lines)package.json—testscript scansexamples/;generate:screenshotspasses-e GENERATE_SCREENSHOTS=1to dockerNo changes to
.github/workflows/ci.ymlneeded —npx playwright test(line 124) andnpm test(lines 94, 159) pick up the fixes automatically.