annotate constant-q-cpp/test/TestCQKernel.cpp @ 372:af71cbdab621 tip

Update bqvec code
author Chris Cannam
date Tue, 19 Nov 2019 10:13:32 +0000
parents 5d0a2ebb4d17
children
rev   line source
Chris@366 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@366 2
Chris@366 3 #include "cq/CQKernel.h"
Chris@366 4
Chris@366 5 #include <cmath>
Chris@366 6 #include <vector>
Chris@366 7 #include <iostream>
Chris@366 8
Chris@366 9 using std::vector;
Chris@366 10 using std::cerr;
Chris@366 11 using std::endl;
Chris@366 12
Chris@366 13 #define BOOST_TEST_DYN_LINK
Chris@366 14 #define BOOST_TEST_MAIN
Chris@366 15
Chris@366 16 #include <boost/test/unit_test.hpp>
Chris@366 17
Chris@366 18 static int rate = 123;
Chris@366 19 static int max = 60;
Chris@366 20 static int min = 12;
Chris@366 21 static int bpo = 4;
Chris@366 22
Chris@366 23 BOOST_AUTO_TEST_SUITE(TestCQKernel)
Chris@366 24
Chris@366 25 // Just some simple tests on kernel construction -- make sure it's the
Chris@366 26 // right size, etc
Chris@366 27
Chris@366 28 BOOST_AUTO_TEST_CASE(sampleRate) {
Chris@366 29 CQParameters params(rate, min, max, bpo);
Chris@366 30 CQKernel k(params);
Chris@366 31 BOOST_CHECK_EQUAL(k.getProperties().sampleRate, rate);
Chris@366 32 }
Chris@366 33
Chris@366 34 BOOST_AUTO_TEST_CASE(binsPerOctave) {
Chris@366 35 CQParameters params(rate, min, max, bpo);
Chris@366 36 CQKernel k(params);
Chris@366 37 BOOST_CHECK_EQUAL(k.getProperties().binsPerOctave, bpo);
Chris@366 38 }
Chris@366 39
Chris@366 40 BOOST_AUTO_TEST_CASE(maxFrequency) {
Chris@366 41 CQParameters params(rate, min, max, bpo);
Chris@366 42 CQKernel k(params);
Chris@366 43 BOOST_CHECK_EQUAL(k.getProperties().maxFrequency, max);
Chris@366 44 }
Chris@366 45
Chris@366 46 BOOST_AUTO_TEST_CASE(minFrequency) {
Chris@366 47 CQParameters params(rate, min, max, bpo);
Chris@366 48 CQKernel k(params);
Chris@366 49 BOOST_CHECK_CLOSE(k.getProperties().minFrequency,
Chris@366 50 (max / 2.0) * pow(2, 1.0/bpo),
Chris@366 51 1e-8);
Chris@366 52 }
Chris@366 53
Chris@366 54 BOOST_AUTO_TEST_CASE(atomsPerFrame) {
Chris@366 55 CQParameters params(rate, min, max, bpo);
Chris@366 56 CQKernel k(params);
Chris@366 57 BOOST_CHECK_EQUAL(k.getProperties().atomsPerFrame, 5);
Chris@366 58 }
Chris@366 59
Chris@366 60 BOOST_AUTO_TEST_CASE(fftSize) {
Chris@366 61 CQParameters params(rate, min, max, bpo);
Chris@366 62 CQKernel k(params);
Chris@366 63 BOOST_CHECK_EQUAL(k.getProperties().fftSize, 32);
Chris@366 64 }
Chris@366 65
Chris@366 66 BOOST_AUTO_TEST_SUITE_END()
Chris@366 67