Tone.js/test/helper/PassAudio.js

28 lines
756 B
JavaScript
Raw Normal View History

2018-05-18 16:07:20 +00:00
define(["helper/Test", "Tone/core/Offline", "Tone/signal/Signal", "Tone/core/Master"],
function(Test, Offline, Signal, Master){
2015-08-16 18:23:40 +00:00
2017-12-30 16:26:29 +00:00
var PassAudio = function(before){
2017-12-30 16:26:29 +00:00
var duration = 0.2;
return Offline(function(){
var sig = new Signal(0);
before(sig);
sig.setValueAtTime(1, duration / 2);
}, duration).then(function(buffer){
var array = buffer.toMono().toArray();
for (var i = 0; i < array.length; i++){
var time = (i / array.length) * duration;
var sample = array[i];
if (time >= duration / 2 && sample !== 0){
return true;
2018-05-18 16:07:20 +00:00
} else if (time < duration / 2){
2017-12-30 16:26:29 +00:00
expect(sample).to.be.closeTo(0, 0.001);
}
}
2017-12-30 16:26:29 +00:00
throw new Error("node outputs silence");
});
};
2015-08-16 18:23:40 +00:00
2017-12-30 16:26:29 +00:00
return PassAudio;
});