playwright/utils/doclint
Dmitry Gozman 34c1b338be
feat(types): make our client classes implement public types (#4817)
This patch:
- introduces non-exported but used in api/impl struct types (e.g. Point);
- makes all client classes implement respective public api interface.

Pros:
- Typescript is now responsible for type checking.
  We can remove our doclint checker (not removed yet).
- Electron and Android types can be defined in the same way
  (this is not implemented yet).
- We can move most of the type structs like Point to the public api
  and make some of them available.

Cons:
- Any cons?
2020-12-26 17:05:57 -08:00
..
check_public_api feat(types): make our client classes implement public types (#4817) 2020-12-26 17:05:57 -08:00
preprocessor chore: generate types, api.json off md rather than html (#4825) 2020-12-26 14:31:41 -08:00
.gitignore Initial commit 2019-11-19 10:58:15 -08:00
cli.js chore: generate types, api.json off md rather than html (#4825) 2020-12-26 14:31:41 -08:00
generateApiJson.js chore: generate types, api.json off md rather than html (#4825) 2020-12-26 14:31:41 -08:00
Message.js Initial commit 2019-11-19 10:58:15 -08:00
README.md Initial commit 2019-11-19 10:58:15 -08:00
Source.js docs: generate method signatures in docs (#4590) 2020-12-03 22:28:11 -08:00

DocLint

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

Doclint works in a few steps:

  1. Read sources in lib/ folder, parse AST trees and extract public API
  2. Read sources in docs/ folder, render markdown to HTML, use playwright 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