Tone.js/test
2017-09-04 16:03:20 -04:00
..
audio using rest of effects tests on Convolver 2016-08-09 14:25:20 -04:00
component splitting Analyser functionality into multiple classes 2017-08-31 10:56:19 -04:00
control applying defaults API to control classes 2017-04-25 22:37:01 -04:00
core Creating Transport event classes which are used internally by the Transport 2017-09-04 16:03:20 -04:00
deps removing unused files from test deps 2017-04-30 15:04:28 -04:00
effect removing convolver effects tests that throw an error when running in TravisCI 2016-11-22 10:46:26 -08:00
event testing playbackRate and humanize 2017-07-06 10:32:50 -04:00
examples throw error if URL doesn't exist 2017-03-26 15:21:45 -04:00
helper linearRampToValue -> linearRampTo 2017-08-31 12:45:25 -04:00
instrument Sampler is now an instrument for creating a chromatic instrument from pitched samples 2017-08-27 12:55:54 -04:00
signal adding cancelAndHold to signal classes 2017-08-31 12:41:15 -04:00
source coverage test for modulationType 2017-06-29 14:20:34 -04:00
type confirming rounding error fix 2017-08-26 15:39:09 -04:00
.jshintrc adding "before" and "context" 2015-08-18 17:08:48 -04:00
index.html renamed test html file 2015-08-17 01:04:04 -04:00
karmaTest.js test all examples for execution errors 2017-03-26 14:51:25 -04:00
README.md only using karma test runner with headless chrome 2017-06-29 17:31:10 -04:00

I am currently using two test runners: mocha and 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 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.