diff options
author | Hauke Heibel <hauke.heibel@gmail.com> | 2009-05-22 14:27:58 +0200 |
---|---|---|
committer | Hauke Heibel <hauke.heibel@gmail.com> | 2009-05-22 14:27:58 +0200 |
commit | 5c5789cf0f28b375e3bfebe3e61756fc0b00fe0c (patch) | |
tree | 8f0c290834bee4119ee8e8084d0231144e12c640 /test/qr.cpp | |
parent | c7baddb132f3c5894775041645f54517bd110d40 (diff) |
QR and SVD decomposition interface unification.
Added default ctor and public compute method as
well as safe-guards against uninitialized usage.
Added unit tests for the safe-guards.
Diffstat (limited to 'test/qr.cpp')
-rw-r--r-- | test/qr.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/qr.cpp b/test/qr.cpp index 8fe356444..b71abb782 100644 --- a/test/qr.cpp +++ b/test/qr.cpp @@ -121,6 +121,22 @@ template<typename MatrixType> void qr_invertible() VERIFY(lu.solve(m3, &m2)); } +template<typename MatrixType> void qr_verify_assert() +{ + MatrixType tmp; + + QR<MatrixType> qr; + VERIFY_RAISES_ASSERT(qr.isFullRank()) + VERIFY_RAISES_ASSERT(qr.rank()) + VERIFY_RAISES_ASSERT(qr.dimensionOfKernel()) + VERIFY_RAISES_ASSERT(qr.isInjective()) + VERIFY_RAISES_ASSERT(qr.isSurjective()) + VERIFY_RAISES_ASSERT(qr.isInvertible()) + VERIFY_RAISES_ASSERT(qr.matrixR()) + VERIFY_RAISES_ASSERT(qr.solve(tmp,&tmp)) + VERIFY_RAISES_ASSERT(qr.matrixQ()) +} + void test_qr() { for(int i = 0; i < 1; i++) { @@ -144,4 +160,11 @@ void test_qr() // CALL_SUBTEST( qr_invertible<MatrixXcf>() ); // CALL_SUBTEST( qr_invertible<MatrixXcd>() ); } + + CALL_SUBTEST(qr_verify_assert<Matrix3f>()); + CALL_SUBTEST(qr_verify_assert<Matrix3d>()); + CALL_SUBTEST(qr_verify_assert<MatrixXf>()); + CALL_SUBTEST(qr_verify_assert<MatrixXd>()); + CALL_SUBTEST(qr_verify_assert<MatrixXcf>()); + CALL_SUBTEST(qr_verify_assert<MatrixXcd>()); } |