Tone.js/test/README.md

20 lines
No EOL
1.2 KiB
Markdown

I am currently using two test runners: [mocha](https://mochajs.org/) and [karma](https://github.com/karma-runner/karma) + mocha.
From within the gulp folder, run `gulp karma-test` to collect all of the files, launch a local server and run the tests.
Be sure that the browser window is in focus while tests are running.
Individual files can be tested by running `gulp collectTests -f [Tone class name]` which will update the test/Main.js with the given class' tests. You can then refresh the `test/index.html` page to rerun those tests.
You can also test groups of classes by folder by adding another flag. For example to test all of the signals run `gulp collectTests --signal`. or the shorthand form: `gulp collectTests -s`.
* `-s` = `--signal`
* `-i` = `--instrument`
* `-o` = `--source`
* `-v` = `--event`
* `-e` = `--effect`
* `-c` = `--core`
* `-m` = `--component`
* `-t` = `--control`
The tests target the latest [specification](https://webaudio.github.io/web-audio-api/) and not any specific browser. I have been keeping a list of which features browsers/versions currently support in `test/helper/Supports.js`. Some tests are only conditionally run if that feature is supported on the platform.