aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorGravatar Hauke Heibel <hauke.heibel@gmail.com>2009-05-22 14:27:58 +0200
committerGravatar Hauke Heibel <hauke.heibel@gmail.com>2009-05-22 14:27:58 +0200
commit0523b64fe9dd72ba41311e3805e8d3c83e4e750a (patch)
tree0b9eb03d80c958a6095877c9974166ac98aaa7bf /test
parent7435d5c0796a47dccb8ea6c58187e9371279ebc9 (diff)
Eigensolver 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')
-rw-r--r--test/eigensolver_generic.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/test/eigensolver_generic.cpp b/test/eigensolver_generic.cpp
index b3a43b639..915f73ee5 100644
--- a/test/eigensolver_generic.cpp
+++ b/test/eigensolver_generic.cpp
@@ -61,6 +61,17 @@ template<typename MatrixType> void eigensolver(const MatrixType& m)
}
+template<typename MatrixType> void eigensolver_verify_assert()
+{
+ MatrixType tmp;
+
+ EigenSolver<MatrixType> eig;
+ VERIFY_RAISES_ASSERT(eig.eigenvectors())
+ VERIFY_RAISES_ASSERT(eig.pseudoEigenvectors())
+ VERIFY_RAISES_ASSERT(eig.pseudoEigenvalueMatrix())
+ VERIFY_RAISES_ASSERT(eig.eigenvalues())
+}
+
void test_eigensolver_generic()
{
for(int i = 0; i < g_repeat; i++) {
@@ -73,5 +84,9 @@ void test_eigensolver_generic()
CALL_SUBTEST( eigensolver(Matrix<double,1,1>()) );
CALL_SUBTEST( eigensolver(Matrix<double,2,2>()) );
}
-}
+ CALL_SUBTEST( eigensolver_verify_assert<Matrix3f>() );
+ CALL_SUBTEST( eigensolver_verify_assert<Matrix3d>() );
+ CALL_SUBTEST( eigensolver_verify_assert<MatrixXf>() );
+ CALL_SUBTEST( eigensolver_verify_assert<MatrixXd>() );
+}