diff options
Diffstat (limited to 'test/inverse.cpp')
-rw-r--r-- | test/inverse.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/inverse.cpp b/test/inverse.cpp index 1e567ad14..4d9297eb4 100644 --- a/test/inverse.cpp +++ b/test/inverse.cpp @@ -82,6 +82,19 @@ template<typename MatrixType> void inverse(const MatrixType& m) m3.computeInverseWithCheck(m4, invertible); VERIFY( rows==1 ? invertible : !invertible ); #endif + + // check in-place inversion + if(MatrixType::RowsAtCompileTime>=2 && MatrixType::RowsAtCompileTime<=4) + { + // in-place is forbidden + VERIFY_RAISES_ASSERT(m1 = m1.inverse()); + } + else + { + m2 = m1.inverse(); + m1 = m1.inverse(); + VERIFY_IS_APPROX(m1,m2); + } } void test_inverse() |