puppeteer/utils/doclint
Jack Franklin a9f6a266b9
chore: Log reminder about tsc if DocLint fails locally (#5652)
I lost some time debugging before realising that I needed to run tsc. I
don't really want to put `npm run tsc` before this command else we'll
run tsc multiple times on each CI build, so I think this message is
suitable.

Travis defines `process.env.TRAVIS` and if that exists we don't want to
log this as on CI we're guaranteed to have an up to date `lib/`
directory.
2020-04-16 14:40:04 +01:00
..
check_public_api chore: migrate remaining tests to Mocha (#5616) 2020-04-09 20:12:32 +02:00
generate_types feat(puppeteer): introduce puppeteer.errors and puppeteer.devices (#4312) 2019-04-19 15:33:06 -07:00
preprocessor chore: migrate remaining tests to Mocha (#5616) 2020-04-09 20:12:32 +02:00
.gitignore [doclint] move doclint testing to golden 2017-07-13 11:17:02 -07:00
cli.js chore: Log reminder about tsc if DocLint fails locally (#5652) 2020-04-16 14:40:04 +01:00
Message.js [doclint] Prepare doclint for more checks 2017-07-31 00:10:59 -07:00
README.md chore: fix missed src/ vs lib/ documentation (#5591) 2020-04-06 10:32:42 +02:00
Source.js chore: drop Node.js v6 support (#5045) 2019-10-16 17:00:20 +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