Factorize VERIFY_EVALUATION_COUNT in unit tests

This commit is contained in:
Gael Guennebaud
2015-06-19 16:38:26 +02:00
parent 5c84dd5665
commit 6318d53b41
4 changed files with 23 additions and 41 deletions

View File

@@ -12,25 +12,10 @@
#undef EIGEN_DEFAULT_TO_ROW_MAJOR
#endif
static long int nb_temporaries;
inline void on_temporary_creation(long int) {
// here's a great place to set a breakpoint when debugging failures in this test!
nb_temporaries++;
}
#define EIGEN_DENSE_STORAGE_CTOR_PLUGIN { on_temporary_creation(size); }
#define TEST_ENABLE_TEMPORARY_TRACKING
#include "main.h"
#define VERIFY_EVALUATION_COUNT(XPR,N) {\
nb_temporaries = 0; \
XPR; \
if(nb_temporaries!=N) std::cerr << "nb_temporaries == " << nb_temporaries << "\n"; \
VERIFY( (#XPR) && nb_temporaries==N ); \
}
// test Ref.h
template<typename MatrixType> void ref_matrix(const MatrixType& m)