Commit graph

1064 commits

Author SHA1 Message Date
Yotam Mann
23932cbfa6 can cancel scheduled stop and setTick events 2018-03-01 14:06:03 -05:00
Yotam Mann
373af11bbc testing stop and cancelStop 2018-03-01 14:02:29 -05:00
Yotam Mann
515973302b expanding pulse oscillator threshold 2018-02-27 17:05:05 -05:00
Yotam Mann
5a04a72d34 TickSignal is slightly more accurate
removes sampleTime subtraction where possible
2018-02-27 17:04:01 -05:00
Yotam Mann
740131e062 Transport exposes getTicksAtTime
uses clock.nextTickTime to compute quantization
2018-02-27 17:03:18 -05:00
Yotam Mann
b14e51f9e9 Clock uses TickSource to track ticks 2018-02-27 17:02:41 -05:00
Yotam Mann
f06516d76d TickSource handles pause events
more flexible and accurate timing calculations
2018-02-27 17:02:17 -05:00
Yotam Mann
cf138c03b4 TickSource tracks elapsed ticks can start/stop
no pause yet
2018-02-25 17:25:32 -05:00
Yotam Mann
836a173cf8 forEachBetween is exclusive of endTime 2018-02-25 15:08:43 -05:00
Yotam Mann
ebb7aac407 getLastState returns the last event with the given state 2018-02-18 16:01:27 -05:00
Yotam Mann
44512cee0a get the readonly maxDelay time 2018-02-15 11:41:01 -05:00
Yotam Mann
92c11091b5 increasing test coverage 2018-02-14 12:18:41 -05:00
Yotam Mann
915d85ebd1 testing instruments are able to retrigger correctly 2018-02-08 11:12:17 -05:00
Yotam Mann
98d1b8808a adding getter/setter for channelCount, channelCountMode and channelInterpretation 2018-02-05 16:51:04 -05:00
Yotam Mann
2666b06d47 adjusting test values 2018-02-05 16:50:29 -05:00
Yotam Mann
56c12fb627 Tone.Mono coerces the incoming mono or stereo signal into a mono signal 2018-02-05 16:40:55 -05:00
Yotam Mann
c91c1354e0 using a stereo signal to test PassAudioStereo and splitting 2018-02-05 16:25:43 -05:00
Yotam Mann
6cb53f6d9a continuity tests on Chrome only 2018-02-05 15:06:53 -05:00
Yotam Mann
423ea05977 skipping FMSynth comparison when not on Chrome 2018-02-05 14:59:40 -05:00
Yotam Mann
88f43379e7 increasing testing threshold 2018-02-05 14:43:03 -05:00
Yotam Mann
bcdaa8196e increasing test threshold 2018-02-05 14:37:07 -05:00
Yotam Mann
67649e43d5 adjusting FFT size and ignoring failing FF tests 2018-02-05 14:36:58 -05:00
Yotam Mann
bc558a1386 increasing threshold 2018-02-05 14:24:26 -05:00
Yotam Mann
4b9a407304 only running tests when audio rending is similar to Chrome 2018-02-05 14:24:21 -05:00
Yotam Mann
5eec68f9d0 compare rendered output to previously rendered audio files 2018-02-05 13:55:37 -05:00
Yotam Mann
e767d618d2 only testing online when supported 2018-02-04 23:01:24 -05:00
Yotam Mann
c4cd005635 adding getValueAtTime to returned RMS 2018-02-04 22:59:17 -05:00
Yotam Mann
f086f58c75 OscillatorNode is a fire-and-forget Oscillator 2018-02-04 22:55:19 -05:00
Yotam Mann
6ed9c8e4d5 testing chaining control signals 2018-02-04 13:05:06 -05:00
Yotam Mann
58eac95314 define left and right variables 2018-02-04 11:43:34 -05:00
Yotam Mann
a228deb862 increasing testing threshold 2018-02-01 09:56:32 -05:00
Yotam Mann
dfe269d60c testing loading un-decodable audio 2018-01-18 12:50:45 -05:00
Yotam Mann
8fa809d5b8 adjusting test threshs to be less susceptible to randomness 2018-01-17 13:40:18 -05:00
Yotam Mann
82c7a109de updating threshold 2018-01-17 13:30:24 -05:00
Yotam Mann
87217d1ab4 does not invoke stop from start in case playbackRate changes
fixes #292
2018-01-17 13:18:51 -05:00
Yotam Mann
9dbb54ff6a AudioNode.connect returns the connected to node
fixes #291
2018-01-11 09:36:08 -08:00
Yotam Mann
1e5606a003 testing cancelAndHold during exponential ramp 2018-01-03 15:38:04 -05:00
Yotam Mann
8759443f9e testing exponential approach and cancelScheduledValues 2018-01-03 15:30:44 -05:00
Yotam Mann
ec6a9baa52 checking for discontinuities with different curve types 2018-01-03 15:23:20 -05:00
Yotam Mann
1917148a99 testing setting AutoWah values 2018-01-03 15:22:52 -05:00
Yotam Mann
ea41ebb599 simple convolution-based reverb 2018-01-03 12:04:27 -05:00
Yotam Mann
a57ac25187 returning promise to OfflineTest defers the callback of 'render' 2018-01-03 12:03:41 -05:00
Yotam Mann
55c3474849 adding get getRmsAtTime to BufferTests 2018-01-03 12:02:41 -05:00
Yotam Mann
3f72fec6f9 returning a promise defers the rendering till the promise has resolved 2018-01-03 12:02:10 -05:00
Yotam Mann
92454266f7 sync/unsync triggerAttack/Release to the Transport 2018-01-02 16:49:41 -05:00
Yotam Mann
ec3a2d24e2 using getTicksAtTime to get the most accurate BarsBeatsSixteenths 2018-01-02 12:25:13 -05:00
Yotam Mann
077ae6d69a Source sync and start after Transport is already running 2018-01-02 10:35:39 -05:00
Yotam Mann
15229d7c7e linting 2017-12-30 11:26:29 -05:00
Yotam Mann
a6f9ca49bd fixing AudioContext.close promise resolution support 2017-12-30 11:23:02 -05:00
Yotam Mann
2b896fad0c don't run Context tests when close isn't supported 2017-12-30 01:19:04 -05:00
Yotam Mann
a84b2ae160 adding polyfill 2017-12-30 00:30:52 -05:00
Yotam Mann
b0f729c9f1 static fromUrl method. 2017-12-30 00:06:53 -05:00
Yotam Mann
c8ac0e7d40 Revert "using babel-polyfill"
This reverts commit aed806032c.
2017-12-29 23:34:44 -05:00
Yotam Mann
aed806032c using babel-polyfill
for older browsers testing
2017-12-29 23:23:28 -05:00
Yotam Mann
919de12cfa don't run example tests on older safari 2017-12-29 23:15:40 -05:00
Yotam Mann
9fe0d1546a increasing threshold slightly 2017-12-29 22:17:44 -05:00
Yotam Mann
f129e5d726 removing the polyfill from the tests 2017-12-29 22:06:39 -05:00
Yotam Mann
658d2f201f adding babel-polyfill for testing older browsers 2017-12-29 21:44:10 -05:00
Yotam Mann
fa7bb9c9d9 only testing when equal power panning is supported 2017-12-29 21:37:42 -05:00
Yotam Mann
46df5578d9 removing TimelineSignal 2017-12-29 20:41:49 -05:00
Yotam Mann
3554eebc46 TransportTimelineSignal extends Signal instead of TimelineSignal 2017-12-29 20:41:34 -05:00
Yotam Mann
985ce80a71 updated Transport.syncSignal to new Param values 2017-12-29 20:07:24 -05:00
Yotam Mann
0b09c674b4 TickSignal extends Signal instead of TimelineSignal 2017-12-29 20:06:47 -05:00
Yotam Mann
8f5c6ea20b increasing testing tolerance 2017-12-29 20:06:21 -05:00
Yotam Mann
1104f3cfc0 moving automation logic to Param instead of AudioParam shim 2017-12-29 20:05:57 -05:00
Yotam Mann
b4c81f7115 misspelled Approach in exponentialApproachValueAtTime 2017-12-29 20:04:46 -05:00
Yotam Mann
5b76ed06c2 testing AutoPanner syncing/unsyncing 2017-12-29 14:05:34 -05:00
Yotam Mann
acf3768120 setting rotation in another way 2017-12-29 13:50:57 -05:00
Yotam Mann
4ec99ed3c0 testing syncing/unsyncing 2017-12-29 13:48:16 -05:00
Yotam Mann
3ab93c008d increasing Midi conversion tests 2017-12-29 13:14:02 -05:00
Yotam Mann
0178845b2b expanding meter tolerance 2017-12-29 12:01:53 -05:00
Yotam Mann
bb8bbe6390 simplifying test
passes on Safari which still has 0-1 as min/max for gain
2017-12-28 18:51:18 -05:00
Yotam Mann
c4abd54719 ignoring UserMedia tests on Safari 2017-12-28 18:44:14 -05:00
Yotam Mann
1c45f13f12 test validating using Tone.Frequency into triggerAttack
addresses #219
2017-12-27 17:41:10 -05:00
Yotam Mann
83ec5d3288 transpose and harmonize Midi notes 2017-12-27 17:29:26 -05:00
Yotam Mann
4d8812ee02 transpose and harmonize a Tone.Frequency
fixes #219
2017-12-27 17:29:10 -05:00
Yotam Mann
40891fb865 using clock seconds
they are accurate even during bpm automation curves
2017-12-27 16:24:27 -05:00
Yotam Mann
32d5451293 ability to get/set ticks at a given time. more accurate seconds counter using elapsed ticks. 2017-12-27 16:23:39 -05:00
Yotam Mann
60cdeaa5f3 converting between ticks and seconds during automation curves
fixes #169
2017-12-27 16:21:45 -05:00
Yotam Mann
65599f8c68 adjusting testing threshold 2017-12-27 16:20:56 -05:00
Yotam Mann
3dadafaf87 verifying getTimeOfTick 2017-12-27 11:47:03 -05:00
Yotam Mann
8dbaf71d89 forEachBetween iterator 2017-12-27 11:46:27 -05:00
Yotam Mann
f6bd45036e increasing number of segments in exponential and approach ramps 2017-12-25 14:43:59 -05:00
Yotam Mann
e61a4c5fe2 renaming to getTicksAtTime 2017-12-21 15:13:43 -05:00
Yotam Mann
d4afe1e6ee Tone.Midi is primitive type for Midi notes 2017-12-17 14:48:25 -05:00
Yotam Mann
b3f1b73250 testing dotted notes 2017-12-17 13:24:52 -05:00
Yotam Mann
cee2d3da3a TransportTime returns seconds instead of Ticks
introducing Ticks for tick representation
2017-12-17 13:24:34 -05:00
Yotam Mann
32374fe27a constructor can take another type and convert it to target type 2017-12-17 13:23:31 -05:00
Yotam Mann
ade2778082 Tone.Ticks extends TransportTime 2017-12-17 13:17:46 -05:00
Yotam Mann
ac6af1cf56 simplifying TimeBase classes. No longer evaluate expressions 2017-12-16 14:31:09 -05:00
Yotam Mann
933fa95b45 define loopStart/End, subdivision and interval in terms of seconds 2017-12-16 14:23:08 -05:00
Yotam Mann
41eeb9884f adding min/maxValue to Param 2017-12-16 13:09:52 -05:00
Idicious
43c2e9b449 Increased general accurary of dbToGain method + updated test cases. (#279)
* Increased general accurary of dbToGain method + updated test cases.

* Increased test accuracy
2017-12-16 00:04:50 -05:00
Yotam Mann
b929b26ca4 can pass in an unloaded Tone.Buffer into Convolver constructor
fixes #277
2017-12-15 23:36:39 -05:00
Yotam Mann
e4380a048b player can be constructed with unloaded Tone.Buffer
onload callback is invoked when the Buffer parameter is loaded

fixes #273
2017-12-15 23:06:06 -05:00
Yotam Mann
4c783c9b09 buffer can be constructed with an unloaded Buffer
load callback is invoked when parameter Buffer is loaded
2017-12-15 23:04:22 -05:00
Yotam Mann
a6ebaeeb9f Emitter.once invokes a callback only once 2017-12-15 11:11:14 -05:00
Yotam Mann
db4e5fab0d if the constructor delayTime is greater than the maxDelay, use the delayTime as the maxDelay
fixes #280
2017-12-06 13:16:22 -05:00
Yotam Mann
f818bede9a releaseAll stops all currently active notes
fixes #272
2017-11-29 16:54:17 -05:00
Yotam Mann
27b1513ddf removing Tone.Expr
no more use for this class
2017-11-29 16:28:47 -05:00
Yotam Mann
7b35eee3ed throw error if constructor is invoked without 'new'
addresses #271
2017-11-29 16:28:04 -05:00
Yotam Mann
ba55239032 only running when devices are available 2017-11-29 16:04:09 -05:00
Yotam Mann
30f118fd55 silence version logging in tests 2017-11-29 15:23:20 -05:00
Yotam Mann
f02a46f0c0 skip tests which rely on AudioContext.close promise resolving on unsupported platforms 2017-11-29 15:22:30 -05:00
Yotam Mann
ff505adf22 use 'fake' flag for Firefox tests 2017-11-29 15:06:46 -05:00
Yotam Mann
37ce3f7d34 testing that dispose returns a Promise 2017-11-29 15:05:58 -05:00
Yotam Mann
2068fc3613 don't log on tests 2017-11-29 15:05:28 -05:00
Yotam Mann
1c13b893de flag for online/focused testing
trying to fix failing tests on headless FF on Travis CI
2017-11-29 15:05:12 -05:00
Yotam Mann
9a745e3624 PolySynth throws error if the instrument voice is not Monophonic
fixes #270
2017-11-26 11:22:25 -08:00
Yotam Mann
c9250ee04a tying setTimeout instead of rAF again 2017-11-24 14:13:51 -08:00
Yotam Mann
b58dd185a7 Revert "replacing rAF for tests bc CI test is not executed in focus"
This reverts commit 9e77c203e4.
2017-11-21 10:06:18 -08:00
Yotam Mann
24e58f5c58 Revert "skip Draw test for now"
This reverts commit c18d8714f3.
2017-11-21 09:56:18 -08:00
Yotam Mann
c18d8714f3 skip Draw test for now 2017-11-21 09:52:16 -08:00
Yotam Mann
0906faea56 putting window in focus 2017-11-21 09:40:32 -08:00
Yotam Mann
9e77c203e4 replacing rAF for tests bc CI test is not executed in focus
causing the test to fail
2017-11-21 09:29:00 -08:00
Yotam Mann
69dd348eaa simplifying APITest 2017-10-26 00:51:43 -04:00
Yotam Mann
903c87ff72 user media does not look for 'default'
instead takes the first device if nothing is specified
2017-10-26 00:50:22 -04:00
Yotam Mann
2410728e9f adjusting test ranges for FF 2017-10-26 00:49:42 -04:00
Yotam Mann
cc7cca7370 removing checking for support 2017-10-26 00:48:51 -04:00
Yotam Mann
c634624fab Revert "simplifying the API tests"
This reverts commit 6af9f28c50.
2017-10-26 00:42:51 -04:00
Yotam Mann
c8dba3c1c5 removing checking browser feature support 2017-10-26 00:27:59 -04:00
Yotam Mann
183bd1e94d using StereoPannerNode shim when not supported 2017-10-26 00:07:02 -04:00
Yotam Mann
6af9f28c50 simplifying the API tests 2017-10-25 23:08:16 -04:00
Yotam Mann
bcd99d2a60 updating to new context dispose returning promise API 2017-10-25 18:00:04 -04:00
Yotam Mann
d153fc86cf removing 'let' from test code 2017-10-24 11:57:23 -04:00
Yotam Mann
10af9eaa6f testing stopping multiple sources 2017-10-21 13:44:30 -04:00
Yotam Mann
f279f57f3f testing exponentialApproach and setValueCurve 2017-09-20 19:05:00 -04:00
Yotam Mann
0723f50796 exponentialApproachAtTime is the same as setTargetAtTime but the timeConstant is computed based on the given time 2017-09-20 19:04:33 -04:00
Yotam Mann
888ea80ea1 adjusting testing thresholds for rounded toTicks()
addresses #255
2017-09-17 12:43:06 -04:00
Yotam Mann
195354584f Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2017-09-17 12:35:41 -04:00
Jack Anderson
5b491a5379 Round Time#toTicks (#256)
* failing test for toTicks() float issue

* round (not floor) to nearest tick
2017-09-17 12:35:32 -04:00
Yotam Mann
b8648cc8ac removing deprecated MultiPlayer class 2017-09-17 12:31:25 -04:00
Yotam Mann
48b15b2c5e removing LFO option from Signal and Param
straightforward to simply connect an LFO to the signal. Also causes
circular dependency issue
2017-09-17 12:26:00 -04:00
Yotam Mann
44582f6f61 increasing acceptable range for test 2017-09-16 15:16:46 -04:00
Yotam Mann
39389e810c warning if scheduling time is in the past
addresses #260
2017-09-15 17:50:12 -04:00
Yotam Mann
d9d7e4edcf silencing warnings in API Tests 2017-09-15 17:46:22 -04:00
Yotam Mann
1559b8275a Add warning if time is scheduled in the past 2017-09-15 17:45:57 -04:00
Yotam Mann
33e7bd0c13 adding "curve" to BufferSource fades 2017-09-13 18:30:43 -04:00
Yotam Mann
3664cd610c alter tests for new envelope release curve 2017-09-13 18:30:02 -04:00
Yotam Mann
69fd12e702 testing targetRampTo 2017-09-13 11:19:12 -04:00
Yotam Mann
42634bd453 using exponential approach for decay and release curves 2017-09-13 11:04:13 -04:00
Yotam Mann
9f545c4bdd exponential approach rampTo 2017-09-13 11:00:32 -04:00
Yotam Mann
08812c0886 optimizing the way that repeat events are handled 2017-09-04 16:08:47 -04:00
Yotam Mann
5d86d72cfb handles events which are added during iteration in the same was as events which are removed during iteration 2017-09-04 16:04:16 -04:00
Yotam Mann
f9fcceb226 Creating Transport event classes which are used internally by the Transport 2017-09-04 16:03:20 -04:00
Yotam Mann
892668b01e linearRampToValue -> linearRampTo 2017-08-31 12:45:25 -04:00
Yotam Mann
6662ca8670 adding cancelAndHold to signal classes
with fallback for unsupported browsers
2017-08-31 12:41:15 -04:00
Yotam Mann
1603ad7b0f splitting Analyser functionality into multiple classes
simplifies the API
2017-08-31 10:56:19 -04:00
Yotam Mann
d6fe0e6d68 analyse() -> getValue() 2017-08-30 14:42:50 -04:00
Yotam Mann
fbe7f341f0 testing other cases of getNumberInput/Output 2017-08-27 20:00:15 -04:00
Yotam Mann
e4044bf39e TransportTimelineSignal is a TimelineSignal which can be scheduled to the Transport 2017-08-27 19:42:10 -04:00
Yotam Mann
f687bb8a11 ability to get buffer values at a given time 2017-08-27 19:41:47 -04:00
Yotam Mann
e6faa39dba classes which generate or process sound extend Tone.AudioNode 2017-08-27 17:50:31 -04:00
Yotam Mann
112b8081a7 testing connect/disconnect 2017-08-27 17:49:32 -04:00
Yotam Mann
6ceca510e4 moving functionality over to Tone.AudioNode 2017-08-27 17:21:17 -04:00
Yotam Mann
35040e94e3 class for processing audio
differentiates classes which process audio and classes which don’t.
keeping in mind the eventual goal of supporting node.js audio rendering
and support for multiple audio contexts
2017-08-27 17:18:19 -04:00
Yotam Mann
841f2448ca can solo multiple audio streams at once 2017-08-27 15:01:13 -04:00
Yotam Mann
b731c85cae adding 'mute' to PanVol 2017-08-27 13:57:50 -04:00
Yotam Mann
1e148a9c74 Sampler is now an instrument for creating a chromatic instrument from pitched samples 2017-08-27 12:55:54 -04:00
Yotam Mann
b2950444db confirming rounding error fix 2017-08-26 15:39:09 -04:00
Yotam Mann
5bea2666c0 defaults can also take an object as third argument 2017-08-26 15:39:09 -04:00
Yotam Mann
62d1f5c9b1 resetting transport state between tests
addresses #250
2017-08-13 21:34:26 -04:00
Jack Anderson
1fb225383e no insignificant zeroes in barsBeatsSixteenths (#250)
* no insignificant zeroes in barsBeatsSixteenths

- fixes #246

* restore bpm to orig val in trailing zero test
2017-08-08 10:54:47 -04:00
Yotam Mann
f3f266d2fa removing min/maxDecibels and returnType test 2017-07-08 11:21:39 -04:00
Yotam Mann
fd533f1eb5 testing releaseAll 2017-07-06 13:02:17 -04:00
Yotam Mann
338d8b0dfb testing playbackRate and humanize 2017-07-06 10:32:50 -04:00
Yotam Mann
4ebbf9440f testing create and dispose 2017-07-05 13:59:24 -04:00
Yotam Mann
f0e4fedd9a testing context options passing as object 2017-07-05 13:58:48 -04:00
Yotam Mann
8a270a22b2 increasing timeout length
CPU limited Travis CI containers are having a hard time keeping up with
the tests
2017-06-30 14:34:01 -04:00
Yotam Mann
a4f1606b3c testing clockSource 2017-06-29 19:49:50 -04:00
Yotam Mann
46f135c69e only using karma test runner with headless chrome 2017-06-29 17:31:10 -04:00
Yotam Mann
43ae923359 coverage test for modulationType 2017-06-29 14:20:34 -04:00
Yotam Mann
5efe448c7a setting spread/count should make no difference 2017-06-29 14:11:57 -04:00
Yotam Mann
a03ee982a7 getting/setting values while the wrong type is set has no effect 2017-06-29 14:04:37 -04:00
Yotam Mann
f188d2cc2e testing getting/setting attributes for each oscillator type 2017-06-29 13:55:50 -04:00
Yotam Mann
59060d28f2 testing cancel 2017-06-29 12:33:27 -04:00
Yotam Mann
db9a75705e testing null sets 2017-06-29 10:44:11 -04:00
Yotam Mann
9578b00f60 more test coverage by testing a wider range of values and orders 2017-06-29 10:24:38 -04:00
Yotam Mann
bf37355552 testing that context 'close' event is emitted 2017-06-19 17:52:38 -04:00
Yotam Mann
9a5a7948ab testing error when no url and adding an AudioBuffer
additional test coverage
2017-06-19 17:11:44 -04:00
Yotam Mann
f178bb17c0 testing players fade 2017-06-19 15:19:16 -04:00
Yotam Mann
942e0b650b testing fades 2017-06-19 15:11:26 -04:00
Yotam Mann
d0adedee0a testing fadeOut 2017-06-19 15:03:27 -04:00
Yotam Mann
bd427b8056 testing multiple extension types 2017-06-19 13:02:45 -04:00
Yotam Mann
56391a8ccc testing Transport state toggle 2017-06-16 17:32:12 -04:00
Yotam Mann
9e353783a6 testing release and triggerAttackRelease 2017-06-16 17:27:40 -04:00
Yotam Mann
91734d23c7 adding portamento test 2017-06-08 13:30:17 -04:00
Yotam Mann
d9d9938b25 testing seek method 2017-05-28 21:28:07 -04:00
Yotam Mann
2328413a8f stops playing if invoked with 'stop' at an earlier time
does not stop playing if `stop` is invoked with a later time
2017-05-28 21:20:17 -04:00
Yotam Mann
ced1c68872 testing that it outputs a signal 2017-05-28 20:47:47 -04:00
Yotam Mann
652c5631cc clock using TickSignal 2017-05-28 19:39:18 -04:00
Yotam Mann
0c5307c3c7 stop time is inclusive of second event 2017-05-28 17:41:27 -04:00
Yotam Mann
2863389be9 loosening values slightly 2017-05-28 17:41:06 -04:00
Yotam Mann
06a3413824 removing start/stop/pause events from TickSignal
adding `getDurationOfTicks`
2017-05-28 16:55:25 -04:00
Yotam Mann
5a8550690f start/stop/pause events to TickSignal 2017-05-28 14:02:15 -04:00
Yotam Mann
73adc20088 get an event before the given event 2017-05-28 13:57:47 -04:00
Yotam Mann
1fcb4392d1 updating with more accurate values 2017-05-26 22:16:25 -04:00
Yotam Mann
6077e18959 testing TickSignal 2017-05-26 16:45:46 -04:00
Yotam Mann
470cc4520f Revert "fixing floating point error in test"
This reverts commit 3c4f03c816.
2017-05-23 23:29:28 -04:00
Yotam Mann
c0677d49f2 player was undefined 2017-05-23 23:02:55 -04:00
Yotam Mann
3c4f03c816 fixing floating point error in test
looks like a floating point error…
2017-05-23 22:15:32 -04:00
Yotam Mann
7331a68104 additional seek test 2017-05-23 09:31:07 -04:00
Yotam Mann
0b916bb4d0 testing stopping twice
second stop is sooner than previous stop. should stop on the sooner
one.

addresses #241
2017-05-22 16:12:35 -04:00
Yotam Mann
3e58c39f10 organizing Buffer tests 2017-05-21 21:00:56 -07:00
Yotam Mann
c8c436cbf2 Tone.Players wraps up multiple Tone.Player objects
fixes #215
fixes #217
2017-05-21 20:40:20 -07:00
Yotam Mann
a6bb882758 readonly loaded boolean if the buffer is loaded 2017-05-21 20:25:35 -07:00
Yotam Mann
7cd7bb1536 source shouldn't be muted
otherwise it’s not testing the right thing
2017-05-21 20:16:32 -07:00
Yotam Mann
f9dc9fea03 testing looping when ticks >= loopEnd 2017-05-21 19:43:50 -07:00
Yotam Mann
6eaca059cb testing that progress is between 0,1 and reaches 1 2017-05-21 19:12:42 -07:00
Yotam Mann
8a692145f6 simplifying tests using ConstantOutput helper 2017-05-16 22:52:09 -07:00
Yotam Mann
264e5d0869 pass additional options other than the urls in second constructor argument 2017-05-13 22:16:05 -04:00
Yotam Mann
f534e13a7e optionally pass in the options object in the second argument 2017-05-13 22:08:55 -04:00
Yotam Mann
b63a3f3f00 testing multisampler 2017-05-13 22:08:14 -04:00
Yotam Mann
c354c85bb0 removing error in clock test
wasn’t able to recover the audio context
2017-05-08 12:19:43 -04:00
Yotam Mann
187884f5ae testing min/max getter 2017-05-08 11:48:47 -04:00
Yotam Mann
a487395201 testing callback error throwing 2017-05-08 11:45:40 -04:00
Yotam Mann
91056ef978 testing passing in device ids/index
returning a promise instead of invoking done
2017-05-02 20:58:44 -04:00
Yotam Mann
c5132d226c testing removing objects the timeline doesn't have
should do nothing
2017-05-02 20:47:08 -04:00
Yotam Mann
45f7360e7d setting buffer after construction 2017-05-02 20:31:18 -04:00
Yotam Mann
81ccab27c8 setting attributes after player is already started 2017-05-02 20:27:58 -04:00
Yotam Mann
488299a822 Player uses BufferSource 2017-05-02 12:15:00 -04:00
Yotam Mann
a1a4ad81c3 testing the empty constructor and static fromArray method 2017-05-01 19:10:05 -04:00
Yotam Mann
b760821234 BufferSource.buffer is a Tone.Buffer 2017-05-01 18:52:53 -04:00
Yotam Mann
1c8cecae57 widening Meter margin of error
fixes failed build when sampleRate=48k
2017-05-01 18:17:05 -04:00
Yotam Mann
f846e97571 testing state and onended callback 2017-05-01 18:02:02 -04:00
Yotam Mann
79a0e22fd7 fixed timing error in Meter
was always passing in NaN
2017-05-01 17:44:25 -04:00
Yotam Mann
90aa3265c0 clear a random ID
shouldn’t cause any errors
2017-05-01 16:43:19 -04:00
Yotam Mann
4577973063 testing toString method
should return the class name
2017-05-01 16:14:55 -04:00
Yotam Mann
695fd2421f can receive to a specific input number instead of input node 2017-05-01 16:03:04 -04:00
Yotam Mann
4154c3a4af testing disconnect from node with input/output channel number 2017-05-01 15:49:54 -04:00
Yotam Mann
110dc5c5bb testing disconnect API more fully 2017-05-01 14:45:06 -04:00
Yotam Mann
ebd49415a6 testing case where receive is made before send 2017-05-01 14:35:30 -04:00
Yotam Mann
9c1365a52f testing numberOfInputs/Outputs 2017-05-01 14:18:19 -04:00
Yotam Mann
42065b8609 testing other latencyHints 2017-05-01 13:55:26 -04:00
Yotam Mann
b358e41ddc returning panner support at the end of the tests 2017-04-30 15:24:20 -04:00
Yotam Mann
10d2224bfd timeline throws error with no time argument 2017-04-30 15:19:48 -04:00
Yotam Mann
e3d0baa471 removing unused files from test deps 2017-04-30 15:04:28 -04:00
Yotam Mann
b927395825 making defaultArg static 2017-04-30 15:03:49 -04:00
Yotam Mann
cf744c2db8 invoking dispose instead of 'close' 2017-04-30 14:49:25 -04:00
Yotam Mann
55379211e6 testing toMaster on audio nodes 2017-04-30 14:49:07 -04:00
Yotam Mann
212e7e193f testing state and labels from the user media device 2017-04-30 14:25:44 -04:00
Yotam Mann
ce2005193d testing triggerRelease and triggerAttackRelease
testing in all instruments that have that method
2017-04-30 14:18:50 -04:00
Yotam Mann
b93f0e2e20 testing fallback StereoPanner
forces to branch without stereo panner support
2017-04-30 14:12:07 -04:00
Yotam Mann
ab282061d5 running Karma tests with user media flag turned on 2017-04-30 13:49:04 -04:00
Yotam Mann
4e6dfaf89e Solo tests 2017-04-30 12:39:14 -04:00
Yotam Mann
25591ab4ba replacing remaining static methods to new API 2017-04-27 00:54:11 -04:00
Yotam Mann
4bda177b83 gainToDb, dbToGain, intervalToFrequencyRatio now static functions 2017-04-26 23:21:26 -04:00
Yotam Mann
d5253b6fce testing static type queries 2017-04-26 00:27:49 -04:00
Yotam Mann
3834f32932 optionsObject -> defaults
with slight API updates
2017-04-26 00:16:12 -04:00
Yotam Mann
a6a8e63bc7 testing passing in values to PolySynth 2017-04-26 00:08:33 -04:00
Yotam Mann
2030034494 sources to new defaults api
and es6 classes prep
2017-04-26 00:00:01 -04:00
Yotam Mann
4057252566 applying defaults API to control classes 2017-04-25 22:37:01 -04:00
Yotam Mann
2c71a7d08f testing that the order is maintained 2017-04-24 23:18:42 -04:00
Yotam Mann
282fdc31ab testing Context.setTimeout methods 2017-04-24 23:13:41 -04:00
Yotam Mann
9e4e091f33 test the forEach callback context 2017-04-24 23:01:45 -04:00
Yotam Mann
a53357c505 removing input/output creation from Tone constructor 2017-04-24 22:09:26 -04:00
Yotam Mann
c9994afcd6 testing that volume is muted when -Infinity is passed into constructor 2017-03-26 16:42:35 -04:00
Yotam Mann
0d59653501 throw error if URL doesn't exist 2017-03-26 15:21:45 -04:00
Yotam Mann
1f9fad3604 test all examples for execution errors 2017-03-26 14:51:25 -04:00
Yotam Mann
4cec0fb7a3 mute is true when volume === -Infinity and false otherwise
fixes #221
2017-03-24 17:27:40 -04:00
Yotam Mann
343e90fa86 testing getConstant 2017-03-22 11:43:35 -04:00
Yotam Mann
55d6bc739c testing Tone.loaded 2017-03-14 16:49:13 -04:00
Yotam Mann
66f1f4343f testing getChannelData 2017-03-13 22:09:08 -04:00
Yotam Mann
d037c28d6f eval -> valueOf
thanks for the suggestion @JackCA
fixes #205
2017-03-12 21:31:23 -04:00
Yotam Mann
f0520d9722 using native sampleRate for tests 2017-02-28 18:59:21 -05:00
Yotam Mann
21d225e322 returning to old test style 2017-02-20 23:32:10 -05:00
Yotam Mann
a64d9d551b adjusting ranges for linux errors 2017-02-20 23:17:20 -05:00
Yotam Mann
c7b62eb939 trying to compensate for linux errors
scheduling samples seems to have different levels of precision of
different platforms
2017-02-20 23:06:27 -05:00
Yotam Mann
07dd1cf7a0 adjusting test ranges again for linux 2017-02-20 22:49:27 -05:00
Yotam Mann
e19ef3bca7 extending ranges to compensate for floating point errors
on linux these were throwing errors
2017-02-20 22:37:32 -05:00
Yotam Mann
e1b7fbd3f9 removing unused tests 2017-02-20 16:45:32 -05:00
Yotam Mann
0ef0ad3a56 type tests use updated Offline API 2017-02-20 16:41:37 -05:00
Yotam Mann
d8ea7ac0fb making sure non-zero signal is output 2017-02-20 16:41:22 -05:00
Yotam Mann
ff7f384192 instrument tests use updated Offline API 2017-02-20 16:40:56 -05:00
Yotam Mann
6253db7250 signal tests use updated Offline API 2017-02-20 16:40:41 -05:00
Yotam Mann
72fe983374 using new value method in BufferTests 2017-02-20 14:07:02 -05:00
Yotam Mann
fc0a26027f migrating tests to new Offline API 2017-02-20 14:06:44 -05:00
Yotam Mann
15dd8107de meter measures and returns RMS 2017-02-20 14:05:33 -05:00
Yotam Mann
bd9b42d5bc additional buffer checks 2017-02-20 14:05:11 -05:00
Yotam Mann
a7a5f00786 testing start with and without duration 2017-02-20 14:03:49 -05:00
Yotam Mann
47325729b2 updating EffectsTests to new Offline API 2017-02-20 00:04:45 -05:00
Yotam Mann
4399793d8d converting components to new Offline test API 2017-02-19 23:55:55 -05:00
Yotam Mann
b3fa0edf9a FF passes all signal scheduling tests 2017-02-19 22:51:10 -05:00
Yotam Mann
d5fa72f447 shim buffer tests into offline return 2017-02-19 22:50:39 -05:00
Yotam Mann
06913fa2cc invokes a callback online a specific time 2017-02-19 20:49:58 -05:00
Yotam Mann
931524407c simplified PassAudioStereo 2017-02-19 20:49:47 -05:00
Yotam Mann
23e07013c9 allowing for sound to slowly ramp in 2017-02-19 20:49:35 -05:00
Yotam Mann
f26f4d42aa evaluates to true if the input produces silence 2017-02-19 20:48:57 -05:00
Yotam Mann
4f8f55c261 updating to new Offline API 2017-02-19 20:48:22 -05:00
Yotam Mann
b027b865e9 removing listener after test is completed 2017-02-19 15:32:26 -05:00
Yotam Mann
b58b6af6ea removing unused tests 2017-02-19 15:32:11 -05:00
Yotam Mann
2b33efa77f new Offline test API 2017-02-19 15:32:00 -05:00
Yotam Mann
99955515ea reinit test on new Context 2017-02-19 15:31:03 -05:00
Yotam Mann
6d8669ce56 updated Offline test API 2017-02-19 15:29:53 -05:00
Yotam Mann
25b79e0108 updating to new PassAudio Test API 2017-02-19 15:29:01 -05:00
Yotam Mann
4652203066 stopDownloads -> cancelDownloads 2017-02-19 12:01:15 -05:00
Yotam Mann
89d92b78bc converting to new Offline test API
and new test helpers
2017-02-19 11:54:29 -05:00
Yotam Mann
9ede009e6d testing OfflineContext 2017-02-19 11:52:53 -05:00
Yotam Mann
2ee1eb2d76 testing Offline method 2017-02-19 11:52:46 -05:00
Yotam Mann
c0b16757e5 Offline test uses new Offline method 2017-02-19 11:52:33 -05:00
Yotam Mann
50663c31f3 Tone.Context tests 2017-02-18 19:47:45 -05:00
Yotam Mann
7d14e87171 testing disconnect 2017-02-11 13:56:57 -05:00
Yotam Mann
27739ca795 changing name of private lookAhead member and adding 'lag' member
‘lag’ is the amount that the clock is falling behind the desired update
interval
2016-12-25 19:38:19 -05:00
Yotam Mann
5989271a31 simplifying Tone.Draw test 2016-12-22 11:36:40 -05:00
Yotam Mann
5d15ee324f lookAhead -> latencyHint
more consistent with WAA spec
2016-12-20 22:47:37 -05:00
Yotam Mann
11e3504cab narrowing threshold of test 2016-12-20 22:39:38 -05:00
Yotam Mann
09f0c26339 a longer interval to compensate for higher default lookAhead 2016-12-20 22:38:37 -05:00
Yotam Mann
273c2f3b51 updating to new Clock API
includes updateInterval
2016-12-20 22:38:07 -05:00
Yotam Mann
2c3fa527fd adding updateInterval
how often the web worker callback is invoked
2016-12-20 22:37:34 -05:00
Yotam Mann
d63c58eeb5 increasing test threshold 2016-12-18 22:33:36 -05:00
Yotam Mann
31fe050475 getStateAtTime -> getValueAtTime 2016-12-18 22:14:14 -05:00
Yotam Mann
9c94b89eec renaming addEvent->add, removeEvent->remove, getEvent->get 2016-12-18 21:56:22 -05:00
Yotam Mann
1536420bc8 adding numberOfInputs/Outputs 2016-12-18 20:57:00 -05:00
Yotam Mann
612b6c0b5e Tone.Draw for synchronizing animation frame and Tone.Clock 2016-12-18 20:26:11 -05:00
Yotam Mann
a0ea404745 Revert "deferred animation callback"
This reverts commit f685bcd5ae.
2016-12-18 13:43:23 -05:00
Yotam Mann
77953eede9 ExternalInput -> UserMedia
updated to latest MediaDevice API
2016-12-17 16:26:27 -05:00
Yotam Mann
eb4242b780 using meter to test if buffer is playing 2016-12-15 12:49:51 -05:00
Yotam Mann
7529599607 adding explicit start time to Transport.start in tests 2016-12-05 21:30:25 -05:00
Yotam Mann
7a1380637e Previous playback is not stopped if retrigger=true
Fixes #186
2016-12-05 21:29:55 -05:00
Yotam Mann
8911dce68a Clock.start with undefined arg is scheduled into the future
if there is no argument passed into the first argument of Clock.start /
Transport.start, the currentTime + Clock’s lookAhead time will be used
as the start time.
2016-12-05 20:59:39 -05:00
Yotam Mann
f685bcd5ae deferred animation callback
This is useful for synchronizing animations with scheduled audio
events.
2016-12-03 12:15:37 -05:00
Yotam Mann
2b7789b3a9 peek and shift methods
this allows the timeline to be used as a priority queue.
2016-12-02 18:59:12 -05:00
Yotam Mann
b721ee8ffd API to set Transport's lookAhead to customize the balance of latency and performance 2016-11-22 10:56:47 -08:00
Yotam Mann
1935d24ba2 removing convolver effects tests that throw an error when running in TravisCI 2016-11-22 10:46:26 -08:00
Yotam Mann
d386ffed97 Convolver.load returns a Promise 2016-11-22 10:31:06 -08:00
Yotam Mann
84c1affe83 Clock uses static lookahead
lookAhead is more conservatively computed and adjusts to the largest
value.
2016-11-21 00:05:19 -08:00
Yotam Mann
3ca0eadafd .load method returns a Promise 2016-11-06 19:16:31 -05:00
Yotam Mann
99dd7717ec don't decrement on error
added method to abort all downloads in progress
2016-11-03 14:39:45 -04:00
Yotam Mann
f4b9393202 testing complex scheduling with multiple start/stop invoked in both event and Transport 2016-10-20 11:45:10 -04:00
Yotam Mann
3f7c903302 sets event start/stop correctly when the loopEnd is changed to smaller than the initial value 2016-10-20 11:44:11 -04:00
Yotam Mann
64a33b0c16 correcting offset when greater than loopEnd 2016-10-11 14:03:10 -04:00
Yotam Mann
c700caed7f member api test 2016-10-05 00:18:41 -04:00
Yotam Mann
b5ff5d365a Part accepts a objects that are not object literals in add/remove
it just needs to have a time property
2016-10-03 23:47:01 -04:00
Yotam Mann
70ea8f7155 panner/listener tests 2016-10-01 21:45:30 -04:00
Yotam Mann
f37e188acd adding type primitives to APITest 2016-09-26 14:58:04 -04:00
Yotam Mann
753640bdeb seek to a position in the buffer 2016-09-25 22:32:54 -04:00
Yotam Mann
2474312a4e updating API tests 2016-09-25 21:58:48 -04:00
Yotam Mann
e4abe75851 validating constructor/method inputs 2016-09-25 21:36:32 -04:00
Yotam Mann
827fda3d00 more accurate handling of syncing to Transport start with an offset / duration 2016-09-25 12:35:57 -04:00
Yotam Mann
7565530987 start/stop/pause callbacks are invoked at the moment they occur
Previously they were invoked when the ‘start/stop/pause’ methods were
called.

Fixes #159
2016-09-24 11:48:28 -04:00
Yotam Mann
792f85bebd clock is an event emitter 2016-09-24 11:26:57 -04:00
Yotam Mann
5b9e01be5c Revert "making envelope tests not start on 0"
This reverts commit 244a4188e4.
2016-09-24 10:03:26 -04:00
Yotam Mann
244a4188e4 making envelope tests not start on 0 2016-09-24 00:01:17 -04:00
Yotam Mann
e3ca856764 additional TransportTime validations 2016-09-20 18:35:28 -04:00
Yotam Mann
cc232ce3c3 updated buses to use Gain. clearing send/recv on new AudioContext
testing that a gain can be passed in.
2016-09-19 23:30:43 -04:00
Yotam Mann
ebf0eb4f64 added Promise tests 2016-09-19 00:08:23 -04:00
Yotam Mann
6a951fa217 using 'emit' instead of 'trigger'
more similar to Node.js EventEmitter class
2016-09-18 20:07:00 -04:00
Yotam Mann
86fa6233c3 Time copy/clone tests 2016-09-18 19:41:41 -04:00
Yotam Mann
46fc0c732c testing LFO as value 2016-09-18 19:28:20 -04:00
Yotam Mann
81c65f0bb0 testing loaded 2016-08-19 18:03:13 -04:00