✨ Compile doc code fences into tests
Every `ts`-tagged fence in README.md / CONTRIBUTING.md now becomes an executed `node:test` case in a gitignored generated file, so a documented example cannot drift from the API. The generator hoists and merges the leading imports, rewrites the library specifier to the `#test-tiny-pattern-ts` alias, and rejects a fence with no describing paragraph or one that re-imports a prelude module. CI regenerates via `pretest:ci`; `create:doc-tests` runs the generator, formats, then typechecks the output against a scoped tsconfig that relaxes `noUnusedLocals`. c8's default excludes already omit the generated `*.test.ts`, so `test:ci` is unchanged.
This commit is contained in:
1 parent
d1963b0329
commit
30d97a9209
15 files changed
+1180
-8
No files matched your search
@@ -1,6 +1,10 @@
|
||||
node_modules
|
||||
dist
|
||||
coverage
|
||||
|
||||
# Generated doc-tests (scripts/create-doc-tests.ts); the folder is kept via .gitkeep
|
||||
src/doc-test/__generated__/*.test.ts
|
||||
!src/doc-test/__generated__/.gitkeep
|
||||
*.log
|
||||
*.tsbuildinfo
|
||||
*.local
|
||||
|
||||
Reference in new issue
Block a user