From 677c157c715f7a6b1bc409de59af0e2bc5a1057a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johan=20Hillerstr=C3=B6m?= Date: Sat, 21 Nov 2015 19:54:54 +0100 Subject: [PATCH] Fix failing vibrato test --- test/effects.js | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/test/effects.js b/test/effects.js index b64f8a2..6b46303 100644 --- a/test/effects.js +++ b/test/effects.js @@ -85,7 +85,7 @@ exports['test 3xx portamento'] = function(assert) { assert.equal(ch.period, 1152 - 16, 'row 1 tick 2 period -16'); }; -exports['test 4xy vibrato'] = function(assert) { +exports['test 4xy vibrato - sine'] = function(assert) { var xm = testdata.resetXMData(); // vibrato 4xy: speed x, depth y // full cycle is 64/speed @@ -107,37 +107,37 @@ exports['test 4xy vibrato'] = function(assert) { XMPlayer.nextTick(); // row 0 tick 1 // compute logical period p from actual play frequency var p = 16*12 * Math.log(p0 / ch.doff) / Math.log(2); - assert.equal(p.toFixed(3), "0.707", 'row 0 tick 1 period +0.707'); + assert.equal(p.toFixed(3), "0.000", 'row 0 tick 1 period +0'); XMPlayer.nextTick(); // row 0 tick 2 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "1.000", 'row 0 tick 2 period +1.000'); + assert.equal(p.toFixed(3), "1.414", 'row 0 tick 2 period +1.414'); XMPlayer.nextTick(); // row 1 tick 0 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "1.414", 'row 1 tick 0 period +1.414'); + assert.equal(p.toFixed(3), "4.000", 'row 1 tick 0 period +4.000'); XMPlayer.nextTick(); // row 1 tick 1 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "0.000", 'row 1 tick 1 period +0'); + assert.equal(p.toFixed(3), "4.000", 'row 1 tick 1 period +4.000'); XMPlayer.nextTick(); // row 1 tick 2 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.414", 'row 1 tick 2 period -1.414'); + assert.equal(p.toFixed(3), "2.828", 'row 1 tick 2 period 2.828'); XMPlayer.nextTick(); // row 2 tick 0 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-2.000", 'row 2 tick 0 period -2.000'); + assert.equal(p.toFixed(3), "0.000", 'row 2 tick 0 period +0'); XMPlayer.nextTick(); // row 2 tick 1 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.990", 'row 2 tick 1 period -1.990'); + assert.equal(p.toFixed(3), "0.000", 'row 2 tick 1 period +0'); XMPlayer.nextTick(); // row 2 tick 2 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.962", 'row 2 tick 2 period -1.962'); + assert.equal(p.toFixed(3), "-0.392", 'row 2 tick 2 period -0.392'); XMPlayer.nextTick(); // row 3 tick 0 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.914", 'row 3 tick 0 period -1.914'); + assert.equal(p.toFixed(3), "-0.780", 'row 3 tick 0 period -0.780'); XMPlayer.nextTick(); // row 3 tick 1 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.848", 'row 3 tick 1 period -1.848'); + assert.equal(p.toFixed(3), "-0.780", 'row 3 tick 1 period -0.780'); XMPlayer.nextTick(); // row 3 tick 2 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.764", 'row 3 tick 2 period -1.764'); + assert.equal(p.toFixed(3), "-1.161", 'row 3 tick 2 period -1.161'); XMPlayer.nextTick(); // row 4 tick 0 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); assert.equal(p.toFixed(3), "0.000", 'row 4 tick 0 period 0 - no vibrato'); @@ -148,16 +148,16 @@ exports['test 4xy vibrato'] = function(assert) { // that's what I'm assuming here... XMPlayer.nextTick(); // row 5 tick 0 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.663", 'row 5 tick 0 period -1.663 - vibrato resume'); + assert.equal(p.toFixed(3), "-1.531", 'row 5 tick 0 period -1.531 - vibrato resume'); XMPlayer.nextTick(); // row 5 tick 1 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.546", 'row 5 tick 1 period -1.546'); + assert.equal(p.toFixed(3), "-1.531", 'row 5 tick 1 period -1.531'); XMPlayer.nextTick(); // row 5 tick 2 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.414", 'row 5 tick 2 period -1.414'); + assert.equal(p.toFixed(3), "-1.886", 'row 5 tick 2 period -1.886'); XMPlayer.nextTick(); // row 6 tick 0 p = -16*12 * Math.log(ch.doff / p0) / Math.log(2); - assert.equal(p.toFixed(3), "-1.269", 'row 6 tick 0 period -1.269'); + assert.equal(p.toFixed(3), "-1.111", 'row 6 tick 0 period -1.111'); }; exports['test Axy volume slide'] = function(assert) {