Two defects in this QA pass were pure CSS drift with no test surface at all: 100vw full-bleed sections panning the document by a scrollbar's width, and controls sitting on three different corner radii. Assert both against the sources, so the next person who hard-codes a radius or drops an overflow-x guard fails CI instead of failing a screenshot review. Tests now read files off disk, so they live in their own tsc project (tsconfig.test.json, node types) excluded from the browser build.
27 lines
759 B
JSON
27 lines
759 B
JSON
{
|
|
"compilerOptions": {
|
|
"target": "es2023",
|
|
"lib": ["ES2023", "DOM"],
|
|
"module": "esnext",
|
|
// Tests read source files off disk (the style-invariant test), so they need
|
|
// the Node types the browser build deliberately excludes.
|
|
"types": ["node", "vite/client"],
|
|
"allowArbitraryExtensions": true,
|
|
"skipLibCheck": true,
|
|
|
|
/* Bundler mode */
|
|
"moduleResolution": "bundler",
|
|
"allowImportingTsExtensions": true,
|
|
"verbatimModuleSyntax": true,
|
|
"moduleDetection": "force",
|
|
"noEmit": true,
|
|
"jsx": "react-jsx",
|
|
|
|
/* Linting */
|
|
"noUnusedLocals": true,
|
|
"noUnusedParameters": true,
|
|
"erasableSyntaxOnly": true,
|
|
"noFallthroughCasesInSwitch": true
|
|
},
|
|
"include": ["src/**/tests/*", "src/test"]
|
|
}
|