Revision 40:8f56ef28b0b1 test/TestPeakInterpolator.cpp
| test/TestPeakInterpolator.cpp | ||
|---|---|---|
| 39 | 39 |
BOOST_CHECK_EQUAL(result, 1.0); |
| 40 | 40 |
} |
| 41 | 41 |
|
| 42 |
BOOST_AUTO_TEST_CASE(peakAtSample_N4) |
|
| 43 |
{
|
|
| 44 |
double data[] = { 0.0, 1.0, 2.0, 0.0 };
|
|
| 45 |
PeakInterpolator p; |
|
| 46 |
double result = p.findPeakLocation(data, 4, 2); |
|
| 47 |
//!!! Actually, this isn't certain at all I think? It could quite |
|
| 48 |
//!!! reasonably be smaller than 2.0 |
|
| 49 |
BOOST_CHECK_EQUAL(result, 2.0); |
|
| 50 |
} |
|
| 51 |
|
|
| 52 | 42 |
BOOST_AUTO_TEST_CASE(peakAtSample_N5) |
| 53 | 43 |
{
|
| 54 | 44 |
double data[] = { 0.0, 1.0, 2.0, 1.0, 0.0 };
|
| ... | ... | |
| 73 | 63 |
BOOST_CHECK_EQUAL(result, 3.0); |
| 74 | 64 |
} |
| 75 | 65 |
|
| 66 |
BOOST_AUTO_TEST_CASE(start) |
|
| 67 |
{
|
|
| 68 |
// Can't meaningfully interpolate if we're identifying element 0 |
|
| 69 |
// as the peak |
|
| 70 |
double data[] = { 1.0, 1.0, 0.0, 0.0 };
|
|
| 71 |
PeakInterpolator p; |
|
| 72 |
double result = p.findPeakLocation(data, 4, 0); |
|
| 73 |
BOOST_CHECK_EQUAL(result, 0.0); |
|
| 74 |
} |
|
| 75 |
|
|
| 76 |
BOOST_AUTO_TEST_CASE(end) |
|
| 77 |
{
|
|
| 78 |
// Likewise for the final element |
|
| 79 |
double data[] = { 0.0, 0.0, 1.0, 1.0 };
|
|
| 80 |
PeakInterpolator p; |
|
| 81 |
double result = p.findPeakLocation(data, 4, 3); |
|
| 82 |
BOOST_CHECK_EQUAL(result, 3.0); |
|
| 83 |
} |
|
| 84 |
|
|
| 85 |
BOOST_AUTO_TEST_CASE(longHalfway) |
|
| 86 |
{
|
|
| 87 |
double data[] = { 1.0, 1.0, 1.0, 2.0, 2.0, 1.0, 1.0, 1.0 };
|
|
| 88 |
PeakInterpolator p; |
|
| 89 |
double result = p.findPeakLocation(data, 8, 4); |
|
| 90 |
BOOST_CHECK_EQUAL(result, 3.5); |
|
| 91 |
} |
|
| 92 |
|
|
| 93 |
BOOST_AUTO_TEST_CASE(shortHalfway) |
|
| 94 |
{
|
|
| 95 |
double data[] = { 1.0, 2.0, 2.0, 1.0 };
|
|
| 96 |
PeakInterpolator p; |
|
| 97 |
double result = p.findPeakLocation(data, 4, 1); |
|
| 98 |
BOOST_CHECK_EQUAL(result, 1.5); |
|
| 99 |
} |
|
| 100 |
|
|
| 76 | 101 |
BOOST_AUTO_TEST_SUITE_END() |
| 77 | 102 |
|
Also available in: Unified diff