Mercurial > hg > svcore
view data/model/test/Compares.h @ 1185:69c84a66727b 3.0-integration
OSX build fixes
author | Chris Cannam |
---|---|
date | Wed, 27 Apr 2016 11:04:32 +0100 |
parents | 9f4505ac9072 |
children | 48e9f538e6e9 |
line wrap: on
line source
#ifndef TEST_COMPARES_H #define TEST_COMPARES_H // These macros are used for comparing generated results, and they // aren't always going to be exact. Adding 0.1 to each value gives // us a little more fuzz in qFuzzyCompare (which ultimately does // the comparison). #define COMPARE_ZERO(a) \ QCOMPARE(a + 0.1, 0.1) #define COMPARE_ZERO_F(a) \ QCOMPARE(a + 0.1f, 0.1f) #define COMPARE_FUZZIER(a, b) \ QCOMPARE(a + 0.1, b + 0.1) #define COMPARE_FUZZIER_F(a, b) \ QCOMPARE(a + 0.1f, b + 0.1f) #define COMPARE_ALL_TO(a, n) \ for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \ COMPARE_FUZZIER(a[cmp_i], n); \ } #define COMPARE_ALL(a, b) \ for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \ COMPARE_FUZZIER(a[cmp_i], b[cmp_i]); \ } #define COMPARE_SCALED(a, b, s) \ for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \ COMPARE_FUZZIER(a[cmp_i] / s, b[cmp_i]); \ } #define COMPARE_ALL_TO_F(a, n) \ for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \ COMPARE_FUZZIER_F(a[cmp_i], n); \ } #define COMPARE_ALL_F(a, b) \ for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \ COMPARE_FUZZIER_F(a[cmp_i], b[cmp_i]); \ } #define COMPARE_SCALED_F(a, b, s) \ for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \ COMPARE_FUZZIER_F(a[cmp_i] / s, b[cmp_i]); \ } #endif