Commit graph

833 commits

Author SHA1 Message Date
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