puppeteer/utils/doclint
Jack Franklin f666be3f5f
chore: remove src/api.ts (#6191)
Now the async hooks helper is gone api.ts was only used by the coverage
tools and by doclint.

DocLint is nearing the end of its lifespan with the TSDoc work, so I
focused on how best to define a list of modules for the coverage
tooling. They define an object of classes, and the path to that module.
They need the full path because we also check if the module exports any
events that need to be emitted - the coverage tool asserts that the
emitting of those events is also tested.

It's not _great_ that DocLint relies on a constant defined in the
coverage utils, but it should only be this way for a short period of
time and no one is actively working on DocLint (bar the effort to remove
it) so I don't think this is worth worrying about.

This change also broke the DocLint tests; based on the fact that DocLint is on its way out it doesn't feel worth fixing the tests, so this commit also removes them.
2020-07-10 10:07:28 +01:00
..
check_public_api chore: remove src/api.ts (#6191) 2020-07-10 10:07:28 +01:00
preprocessor chore: update references to branch names (#6022) 2020-06-15 17:34:16 +02:00
.gitignore [doclint] move doclint testing to golden 2017-07-13 11:17:02 -07:00
cli.js chore(agnostic): ship CJS and ESM builds (#6095) 2020-06-25 14:24:46 +01:00
Message.js docs: replace @return with @returns (#6006) 2020-06-12 12:38:24 +02:00
README.md chore: fix missed src/ vs lib/ documentation (#5591) 2020-04-06 10:32:42 +02:00
Source.js docs: replace @return with @returns (#6006) 2020-06-12 12:38:24 +02:00

DocLint

Doclint is a small program that lints Puppeteer's documentation against Puppeteer's source code.

Doclint works in a few steps:

  1. Read sources in lib/ folder, parse AST trees and extract public API
    • note that we run DocLint on the outputted JavaScript in lib/ rather than the source code in src/. We will do this until we have migrated src/ to be exclusively TypeScript and then we can update DocLint to support TypeScript.
  2. Read sources in docs/ folder, render markdown to HTML, use puppeteer to traverse the HTML and extract described API
  3. Compare one API to another

Doclint is also responsible for general markdown checks, most notably for the table of contents relevancy.

Running

npm run doc

Tests

Doclint has its own set of jasmine tests, located at utils/doclint/test folder.

To execute tests, run:

npm run test-doclint