diff options
author | Gael Guennebaud <g.gael@free.fr> | 2019-03-03 15:25:25 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2019-03-03 15:25:25 +0100 |
commit | b0d406d91c62ff32153df43d5f698ceb02341ac7 (patch) | |
tree | ad37e1e4371fd6b5a3267d80f59b531e878e303e /test/ref.cpp | |
parent | 9ba81cf0ff5461bb7876787ac9f80aadc2a4844d (diff) |
Enable construction of Ref<VectorType> from a runtime vector.
Diffstat (limited to 'test/ref.cpp')
-rw-r--r-- | test/ref.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/test/ref.cpp b/test/ref.cpp index 250135bdb..c0b6ffdcf 100644 --- a/test/ref.cpp +++ b/test/ref.cpp @@ -102,10 +102,14 @@ template<typename VectorType> void ref_vector(const VectorType& m) Index i = internal::random<Index>(0,size-1); Index bsize = internal::random<Index>(1,size-i); - RefMat rm0 = v1; - VERIFY_IS_EQUAL(rm0, v1); - RefDynMat rv1 = v1; - VERIFY_IS_EQUAL(rv1, v1); + { RefMat rm0 = v1; VERIFY_IS_EQUAL(rm0, v1); } + { RefMat rm0 = v1.block(0,0,size,1); VERIFY_IS_EQUAL(rm0, v1); } + { RefDynMat rv1 = v1; VERIFY_IS_EQUAL(rv1, v1); } + { RefDynMat rv1 = v1.block(0,0,size,1); VERIFY_IS_EQUAL(rv1, v1); } + { VERIFY_RAISES_ASSERT( RefMat rm0 = v1.block(0, 0, size, 0); EIGEN_UNUSED_VARIABLE(rm0); ); } + if(VectorType::SizeAtCompileTime!=1) + { VERIFY_RAISES_ASSERT( RefDynMat rv1 = v1.block(0, 0, size, 0); EIGEN_UNUSED_VARIABLE(rv1); ); } + RefDynMat rv2 = v1.segment(i,bsize); VERIFY_IS_EQUAL(rv2, v1.segment(i,bsize)); rv2.setOnes(); |