Revision 49:d6705fec7a94 test/TestFFT.cpp

View differences:

test/TestFFT.cpp
38 38

  
39 39
#define COMPARE_CONST(a, n) \
40 40
    for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \
41
        BOOST_CHECK_EQUAL(a[cmp_i] + 1.1, n + 1.1); \
41
        BOOST_CHECK_SMALL(a[cmp_i] - n, 1e-14);				\
42 42
    }
43 43

  
44 44
#define COMPARE_ARRAY(a, b)						\
45 45
    for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \
46
        BOOST_CHECK_EQUAL(a[cmp_i] + 1.1, b[cmp_i] + 1.1); \
46
        BOOST_CHECK_SMALL(a[cmp_i] - b[cmp_i], 1e-14);			\
47 47
    }
48 48

  
49 49
BOOST_AUTO_TEST_CASE(dc)
......
101 101
    double re[4], im[4];
102 102
    Vamp::FFT::forward(4, in, 0, re, im);
103 103
    BOOST_CHECK_EQUAL(re[0], 0.0);
104
    BOOST_CHECK_EQUAL(re[1], 1.0);
104
    BOOST_CHECK_CLOSE(re[1], 1.0, 1e-12);
105 105
    BOOST_CHECK_EQUAL(re[2], 0.0);
106 106
    BOOST_CHECK_EQUAL(im[0], 0.0);
107
    BOOST_CHECK_EQUAL(im[1], -2.0);
107
    BOOST_CHECK_CLOSE(im[1], -2.0, 1e-12);
108 108
    BOOST_CHECK_EQUAL(im[2], 0.0);
109 109
    double back[4];
110 110
    double backim[4];
......
119 119
    double re[4], im[4];
120 120
    Vamp::FFT::forward(4, in, 0, re, im);
121 121
    BOOST_CHECK_EQUAL(re[0], 0.0);
122
    BOOST_CHECK_EQUAL(re[1], 1.0);
122
    BOOST_CHECK_CLOSE(re[1], 1.0, 1e-12);
123 123
    BOOST_CHECK_EQUAL(re[2], 0.0);
124 124
    BOOST_CHECK_EQUAL(im[0], 0.0);
125
    BOOST_CHECK_EQUAL(im[1], -2.0);
125
    BOOST_CHECK_CLOSE(im[1], -2.0, 1e-12);
126 126
    BOOST_CHECK_EQUAL(im[2], 0.0);
127 127
    double back[4];
128 128
    double backim[4];

Also available in: Unified diff