# HG changeset patch # User Chris Cannam # Date 1386326996 0 # Node ID 560b4a93f4929182b506b84bdabdda551eeff290 # Parent 5945b8905d1f04088a15bbb742a3c805e9ef38a8 Remove unused file diff -r 5945b8905d1f -r 560b4a93f492 test/TestPredominoMethods.cpp --- a/test/TestPredominoMethods.cpp Fri Dec 06 10:49:00 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,132 +0,0 @@ -/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ - -#include "PredominoMethods.h" - -#define BOOST_TEST_DYN_LINK -#define BOOST_TEST_MAIN - -#include -#include - -BOOST_AUTO_TEST_SUITE(TestPredominoMethods) - -BOOST_AUTO_TEST_CASE(pickNPeaks) -{ - vector invec; - invec.push_back(0); - invec.push_back(1); - invec.push_back(2); - invec.push_back(1); - invec.push_back(3); - invec.push_back(3); - invec.push_back(4); - invec.push_back(0); - invec.push_back(1); - invec.push_back(0); - - vector outvec = PredominoMethods::pickNPeaks(invec, 2); - BOOST_CHECK_EQUAL(outvec[0], 2); - BOOST_CHECK_EQUAL(outvec[1], 6); - -} - -BOOST_AUTO_TEST_CASE(zeroPad) -{ - size_t nIn = 4; - size_t nPadded = 8; - float *in = new float[nIn]; - in[0] = 1; in[1] = 2; in[2] = 3; in[3] = 4; - float *out = new float[nPadded]; - PredominoMethods::zeroPad(in, out, nIn, nPadded); - - BOOST_CHECK_EQUAL(out[0], 3); - BOOST_CHECK_EQUAL(out[1], 4); - for (size_t i = 2; i < nPadded - nIn/2; ++i) { - BOOST_CHECK_EQUAL(out[i], 0); - } - BOOST_CHECK_EQUAL(out[6], 1); - BOOST_CHECK_EQUAL(out[7], 2); - - delete [] in; - delete [] out; -} - -BOOST_AUTO_TEST_CASE(applyWindow) -{ - size_t n = 4; - vector in; - vector win; - for (size_t i = 0; i < n; ++i) { - in.push_back(i); - win.push_back(i); - } - PredominoMethods::applyWindow(&in, win); - for (size_t i = 0; i < n; ++i) { - BOOST_CHECK_EQUAL(in[i], i*i); - } -} - -BOOST_AUTO_TEST_CASE(hannWindow4) -{ - size_t n = 4; - vector hw = PredominoMethods::hannWindow(n); - // for (size_t i = 0; i < n; ++i) { - // std::cerr << hw[i] << std::endl; - // } - - BOOST_CHECK_CLOSE_FRACTION(hw[0], 0.1382, .0001); - BOOST_CHECK_CLOSE_FRACTION(hw[1], 0.3618, .0001); - BOOST_CHECK_CLOSE_FRACTION(hw[2], 0.3618, .0001); - BOOST_CHECK_CLOSE_FRACTION(hw[3], 0.1382, .0001); -} - -BOOST_AUTO_TEST_CASE(parabolicInterpolation) -{ - vector mag1; - mag1.push_back(1); mag1.push_back(2); mag1.push_back(1); - vector peakIndices1; - peakIndices1.push_back(1); - vector interpolated1 = PredominoMethods::parabolicInterpolation(mag1, peakIndices1); - BOOST_CHECK_CLOSE_FRACTION(interpolated1[0], 0, 0.001); - - vector mag2; - mag2.push_back(1); mag2.push_back(1); mag1.push_back(0); - vector peakIndices2; - peakIndices2.push_back(1); - vector interpolated2 = PredominoMethods::parabolicInterpolation(mag2, peakIndices2); - BOOST_CHECK_CLOSE_FRACTION(interpolated2[0], -0.5, 0.001); -} - -BOOST_AUTO_TEST_CASE(convertMagnitude2dB) -{ - vector mag; - mag.push_back(1.01); - vector magdb = PredominoMethods::convertMagnitude2dB(mag); - BOOST_CHECK_CLOSE_FRACTION(magdb[0], 0.0864, 0.001); -} - -BOOST_AUTO_TEST_CASE(generateOutputFrequencies) -{ - vector f = PredominoMethods::generateOutputFrequencies(110, 2, 50); - BOOST_CHECK_CLOSE_FRACTION(f[0], 110, 0.001); - BOOST_CHECK_CLOSE_FRACTION(f[1], 113.2232, 0.001); -} - -BOOST_AUTO_TEST_CASE(timedomain2magnitude) -{ - float *in = new float[4]; - in[0] = 1; - in[1] = 2; - in[2] = 3; - in[3] = 2; - vector mag = PredominoMethods::timedomain2magnitude(in, 4, 0); - // for (size_t i = 0; i < 4; ++i) std::cerr << mag[i] << std::endl; - delete [] in; - BOOST_CHECK_CLOSE_FRACTION(mag[0], 8, 0.001); - BOOST_CHECK_CLOSE_FRACTION(mag[1], 2, 0.001); - BOOST_CHECK_CLOSE_FRACTION(mag[2], 0, 0.001); - BOOST_CHECK_CLOSE_FRACTION(mag[3], 2, 0.001); -} - -BOOST_AUTO_TEST_SUITE_END() -