diff options
author | Gael Guennebaud <g.gael@free.fr> | 2017-01-23 22:06:08 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2017-01-23 22:06:08 +0100 |
commit | ba3f977946ed0ac5dde82a15a9c11784513155f2 (patch) | |
tree | 0957843366137775716aed69feb8bf59c43b2b79 /test/sparse_basic.cpp | |
parent | b0db4eff367017f8b273b7d407b3fe0e86808ed2 (diff) |
bug #1376: add missing assertion on size mismatch with compound assignment operators (e.g., mat += mat.col(j))
Diffstat (limited to 'test/sparse_basic.cpp')
-rw-r--r-- | test/sparse_basic.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/test/sparse_basic.cpp b/test/sparse_basic.cpp index 271e55eba..208a66f12 100644 --- a/test/sparse_basic.cpp +++ b/test/sparse_basic.cpp @@ -214,6 +214,14 @@ template<typename SparseMatrixType> void sparse_basic(const SparseMatrixType& re VERIFY_IS_APPROX(m1+=m2, refM1+=refM2); VERIFY_IS_APPROX(m1-=m2, refM1-=refM2); + if (rows>=2 && cols>=2) + { + VERIFY_RAISES_ASSERT( m1 += m1.innerVector(0) ); + VERIFY_RAISES_ASSERT( m1 -= m1.innerVector(0) ); + VERIFY_RAISES_ASSERT( refM1 -= m1.innerVector(0) ); + VERIFY_RAISES_ASSERT( refM1 += m1.innerVector(0) ); + } + // test aliasing VERIFY_IS_APPROX((m1 = -m1), (refM1 = -refM1)); VERIFY_IS_APPROX((m1 = m1.transpose()), (refM1 = refM1.transpose().eval())); @@ -428,7 +436,7 @@ template<typename SparseMatrixType> void sparse_basic(const SparseMatrixType& re m3 = m2.template triangularView<StrictlyLower>(); VERIFY_IS_APPROX(m3, refMat3); - // check sparse-traingular to dense + // check sparse-triangular to dense refMat3 = m2.template triangularView<StrictlyUpper>(); VERIFY_IS_APPROX(refMat3, DenseMatrix(refMat2.template triangularView<StrictlyUpper>())); } |