add regression test for previous fix

This commit is contained in:
Gael Guennebaud 2010-05-13 23:34:04 +02:00
parent 42a1c983c1
commit 6d08301dcc

View File

@ -52,6 +52,17 @@ template<typename MatrixType> void matrixRedux(const MatrixType& m)
VERIFY_IS_APPROX(m1.prod(), p);
VERIFY_IS_APPROX(m1.real().minCoeff(), ei_real(minc));
VERIFY_IS_APPROX(m1.real().maxCoeff(), ei_real(maxc));
// test sclice vectorization assuming assign is ok
int r0 = ei_random<int>(0,rows-1);
int c0 = ei_random<int>(0,cols-1);
int r1 = ei_random<int>(r0+1,rows)-r0;
int c1 = ei_random<int>(c0+1,cols)-c0;
VERIFY_IS_APPROX(m1.block(r0,c0,r1,c1).sum(), m1.block(r0,c0,r1,c1).eval().sum());
VERIFY_IS_APPROX(m1.block(r0,c0,r1,c1).mean(), m1.block(r0,c0,r1,c1).eval().mean());
VERIFY_IS_APPROX(m1.block(r0,c0,r1,c1).prod(), m1.block(r0,c0,r1,c1).eval().prod());
VERIFY_IS_APPROX(m1.block(r0,c0,r1,c1).real().minCoeff(), m1.block(r0,c0,r1,c1).real().eval().minCoeff());
VERIFY_IS_APPROX(m1.block(r0,c0,r1,c1).real().maxCoeff(), m1.block(r0,c0,r1,c1).real().eval().maxCoeff());
}
template<typename VectorType> void vectorRedux(const VectorType& w)