rename .worker.js to -worker.js so WPT won't try to run it as a standalone test
2 files changed
tree: 54d84eb08cef48065b5d9217349e6dde7f4e2933
  1. .vscode/
  2. docs/
  3. src/
  4. templates/
  5. third_party/
  6. tools/
  7. .gitignore
  8. .travis.yml
  9. babel.config.js
  10. CONTRIBUTING.md
  11. deploy_key.enc
  12. Gruntfile.js
  13. index.html
  14. LICENSE.txt
  15. package.json
  16. prettier.config.js
  17. README.md
  18. tsconfig.json
  19. tslint.json
  20. yarn.lock
README.md

WebGPU CTS

The WebGPU CTS is written in TypeScript, and builds into two directories:

  • out/: Built framework and test files, needed to run standalone or command line.
  • out-wpt/: Build directory for export into WPT. Contains WPT runner and a copy of just the needed files from out/.

Docs

Developing

Setup

After checking out the repository and installing Yarn, run these commands to set up dependencies:

cd cts/
yarn install

npx grunt  # show available grunt commands

Build

To build and run all pre-submit checks (including type and lint checks and unittests), use:

npx grunt pre

For a quicker iterative build:

npx grunt test

Run

To test in a browser under the standalone harness, run grunt serve, then open:

Debug

To see debug logs in a browser, use the debug=1 query string:

Making Changes

To add new tests, simply imitate the pattern in neigboring tests or neighboring files. New test files must be named ending in .spec.ts.

For an example, see src/suites/cts/examples.spec.ts.

Since this project is written in TypeScript, it integrates best with Visual Studio Code. There are also some default settings (in .vscode/settings.json) which will be applied automatically.

Before uploading, you should run pre-submit checks (grunt pre).

Be sure to read CONTRIBUTING.md.

Export to WPT

Copy (or symlink) the out-wpt/ directory as the webgpu/ directory in your WPT checkout.