Skip to content

Commit

Permalink
Update dsp tests for single-sample
Browse files Browse the repository at this point in the history
  • Loading branch information
oampo committed Feb 10, 2012
1 parent b8f8d20 commit 4d60da6
Show file tree
Hide file tree
Showing 9 changed files with 142 additions and 189 deletions.
28 changes: 8 additions & 20 deletions tests/dsp/AllPassFilter.js
Expand Up @@ -12,28 +12,16 @@ function testAPF() {
sine.connect(apf);
apf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
apf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data);
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer);
}

test("All Pass Filter", testAPF);

function testEmpty() {
var audiolet = new Audiolet();
var apf = new AllPassFilter(audiolet);
var node = new Introspector(audiolet, 1, 0);
apf.connect(node);

node.tick(8192, 0);

Assert.assertEquals(node.inputBuffers[0].isEmpty, true, "Buffer empty");
}

test("Empty input", testEmpty);
72 changes: 32 additions & 40 deletions tests/dsp/BandPassFilter.js
Expand Up @@ -12,15 +12,16 @@ function testBPF() {
sine.connect(bpf);
bpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
bpf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data);
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer);
}

test("Band Pass Filter", testBPF);
Expand All @@ -35,15 +36,16 @@ function testFilteringLows() {
sine.connect(bpf);
bpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
bpf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data, -0.1, 0.1); // Check for low amplitude
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer, -0.1, 0.1); // Check for low amplitude
}

test("Is Filtering Lows", testFilteringLows);
Expand All @@ -58,14 +60,16 @@ function testPassingCenter() {
sine.connect(bpf);
bpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
bpf.tick();
recorder.tick();

}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertAudibleValues(data);
Assert.assertValuesReach(data); // Check for high amplitude
var buffer = recorder.buffers[0][0];
Assert.assertAudibleValues(buffer);
Assert.assertValuesReach(buffer); // Check for high amplitude
}

test("Is Passing Center", testPassingCenter);
Expand All @@ -80,28 +84,16 @@ function testFilteringHighs() {
sine.connect(bpf);
bpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
bpf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data, -0.1, 0.1); // Check for low amplitude
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer, -0.1, 0.1); // Check for low amplitude
}

test("Is Filtering Highs", testFilteringHighs);

function testEmpty() {
var audiolet = new Audiolet();
var bpf = new BandPassFilter(audiolet);
var node = new Introspector(audiolet, 1, 0);
bpf.connect(node);

node.tick(8192, 0);

Assert.assertEquals(node.inputBuffers[0].isEmpty, true, "Buffer empty");
}

test("Empty input", testEmpty);
68 changes: 30 additions & 38 deletions tests/dsp/BandRejectFilter.js
Expand Up @@ -12,15 +12,16 @@ function testBRF() {
sine.connect(brf);
brf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
brf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data);
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer);
}

test("Band Reject Filter", testBRF);
Expand All @@ -36,14 +37,15 @@ function testPassingLows() {
sine.connect(brf);
brf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
brf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertAudibleValues(data);
Assert.assertValuesReach(data); // Check for high amplitude
var buffer = recorder.buffers[0][0];
Assert.assertAudibleValues(buffer);
Assert.assertValuesReach(buffer); // Check for high amplitude
}

test("Is Passing Lows", testPassingLows);
Expand All @@ -58,15 +60,16 @@ function testFilteringCenter() {
sine.connect(brf);
brf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
brf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data, -0.5, 0.5); // Check for low amplitude
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer, -0.5, 0.5); // Check for low amplitude
}

test("Is Filtering Center", testFilteringCenter);
Expand All @@ -81,27 +84,16 @@ function testPassingHighs() {
sine.connect(brf);
brf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
brf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertAudibleValues(data);
Assert.assertValuesReach(data); // Check for high amplitude
var buffer = recorder.buffers[0][0];
Assert.assertAudibleValues(buffer);
Assert.assertValuesReach(buffer); // Check for high amplitude
}

test("Is Passing Highs", testPassingHighs);

function testEmpty() {
var audiolet = new Audiolet();
var brf = new BandRejectFilter(audiolet);
var node = new Introspector(audiolet, 1, 0);
brf.connect(node);

node.tick(8192, 0);

Assert.assertEquals(node.inputBuffers[0].isEmpty, true, "Buffer empty");
}

test("Empty input", testEmpty);
56 changes: 23 additions & 33 deletions tests/dsp/HighPassFilter.js
Expand Up @@ -12,15 +12,16 @@ function testHPF() {
sine.connect(hpf);
hpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
hpf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data);
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer);
}

test("High Pass Filter", testHPF);
Expand All @@ -35,15 +36,16 @@ function testFilteringLows() {
sine.connect(hpf);
hpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
hpf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertContinuous(data);
Assert.assertAudibleValues(data);
Assert.assertValuesInRange(data, -0.1, 0.1); // Check for low amplitude
var buffer = recorder.buffers[0][0];
Assert.assertContinuous(buffer);
Assert.assertAudibleValues(buffer);
Assert.assertValuesInRange(buffer, -0.1, 0.1); // Check for low amplitude
}

test("Is Filtering Lows", testFilteringLows);
Expand All @@ -58,27 +60,15 @@ function testPassingHighs() {
sine.connect(hpf);
hpf.connect(recorder);

for (var i=0; i<10; i++) {
recorder.tick(8192, i);
for (var i=0; i<81920; i++) {
sine.tick();
hpf.tick();
recorder.tick();
}

var buffer = recorder.buffers[0];
var data = buffer.getChannelData(0);
Assert.assertAudibleValues(data);
Assert.assertValuesReach(data); // Check for high amplitude
var buffer = recorder.buffers[0][0];
Assert.assertAudibleValues(buffer);
Assert.assertValuesReach(buffer); // Check for high amplitude
}

test("Is Passing Highs", testPassingHighs);

function testEmpty() {
var audiolet = new Audiolet();
var hpf = new HighPassFilter(audiolet);
var node = new Introspector(audiolet, 1, 0);
hpf.connect(node);

node.tick(8192, 0);

Assert.assertEquals(node.inputBuffers[0].isEmpty, true, "Buffer empty");
}

test("Empty input", testEmpty);

0 comments on commit 4d60da6

Please sign in to comment.