mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Add unit tests for bug #981: valid and invalid usage of ternary operator
This commit is contained in:
@@ -126,6 +126,20 @@ template<typename MatrixType> void basicStuff(const MatrixType& m)
|
||||
for(typename MatrixType::Index i=0;i<rows;++i)
|
||||
sm2.col(i).noalias() -= sm1.row(i);
|
||||
VERIFY_IS_APPROX(sm2,-sm1.transpose());
|
||||
|
||||
// check ternary usage
|
||||
{
|
||||
bool b = internal::random<int>(0,10)>5;
|
||||
m3 = b ? m1 : m2;
|
||||
if(b) VERIFY_IS_APPROX(m3,m1);
|
||||
else VERIFY_IS_APPROX(m3,m2);
|
||||
m3 = b ? -m1 : m2;
|
||||
if(b) VERIFY_IS_APPROX(m3,-m1);
|
||||
else VERIFY_IS_APPROX(m3,m2);
|
||||
m3 = b ? m1 : -m2;
|
||||
if(b) VERIFY_IS_APPROX(m3,m1);
|
||||
else VERIFY_IS_APPROX(m3,-m2);
|
||||
}
|
||||
}
|
||||
|
||||
template<typename MatrixType> void basicStuffComplex(const MatrixType& m)
|
||||
|
||||
Reference in New Issue
Block a user