diff options
author | Jitse Niesen <jitse@maths.leeds.ac.uk> | 2010-05-30 21:49:35 +0100 |
---|---|---|
committer | Jitse Niesen <jitse@maths.leeds.ac.uk> | 2010-05-30 21:49:35 +0100 |
commit | db8631b66a4f5cb9957a58cc629be5ef438e3059 (patch) | |
tree | 50a3ef1425a13e183f42ae36dd34087899e06460 /test/eigensolver_complex.cpp | |
parent | 6ce22a61b3a2560a5464b368bee64555645da59f (diff) |
Guard with assert against using decomposition objects uninitialized.
Diffstat (limited to 'test/eigensolver_complex.cpp')
-rw-r--r-- | test/eigensolver_complex.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/eigensolver_complex.cpp b/test/eigensolver_complex.cpp index 5c5d7b38f..4437d9811 100644 --- a/test/eigensolver_complex.cpp +++ b/test/eigensolver_complex.cpp @@ -76,6 +76,13 @@ template<typename MatrixType> void eigensolver(const MatrixType& m) VERIFY_IS_APPROX(id.operatorNorm(), RealScalar(1)); } +template<typename MatrixType> void eigensolver_verify_assert() +{ + ComplexEigenSolver<MatrixType> eig; + VERIFY_RAISES_ASSERT(eig.eigenvectors()) + VERIFY_RAISES_ASSERT(eig.eigenvalues()) +} + void test_eigensolver_complex() { for(int i = 0; i < g_repeat; i++) { @@ -85,6 +92,11 @@ void test_eigensolver_complex() CALL_SUBTEST_4( eigensolver(Matrix3f()) ); } + CALL_SUBTEST_1( eigensolver_verify_assert(Matrix4cf()) ); + CALL_SUBTEST_2( eigensolver_verify_assert(MatrixXcd(14,14)) ); + CALL_SUBTEST_3( eigensolver_verify_assert(Matrix<std::complex<float>, 1, 1>()) ); + CALL_SUBTEST_4( eigensolver_verify_assert(Matrix3f()) ); + // Test problem size constructors CALL_SUBTEST_5(ComplexEigenSolver<MatrixXf>(10)); } |