diff options
author | Gael Guennebaud <g.gael@free.fr> | 2016-01-30 22:26:17 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2016-01-30 22:26:17 +0100 |
commit | a4e4542b89092eb2ed2984aae6f15bbcc43d7ed6 (patch) | |
tree | 1e4877d757d18d6c2afada10493c6c0b02f87a9b /test/stable_norm.cpp | |
parent | 3ba8a3ab1a77fd2f58448187c6881d13bf51f430 (diff) |
Avoid overflow in unit test.
Diffstat (limited to 'test/stable_norm.cpp')
-rw-r--r-- | test/stable_norm.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/test/stable_norm.cpp b/test/stable_norm.cpp index 9f12320e0..c3eb5ff31 100644 --- a/test/stable_norm.cpp +++ b/test/stable_norm.cpp @@ -174,7 +174,8 @@ template<typename MatrixType> void stable_norm(const MatrixType& m) VERIFY_IS_APPROX(vcopy.norm(), RealScalar(1)); VERIFY_IS_APPROX((vbig.stableNormalized()).norm(), RealScalar(1)); VERIFY_IS_APPROX((vsmall.stableNormalized()).norm(), RealScalar(1)); - VERIFY_IS_APPROX(vbig, vbig.stableNorm() * vbig.stableNormalized()); + RealScalar big_scaling = ((std::numeric_limits<RealScalar>::max)() * RealScalar(1e-4)); + VERIFY_IS_APPROX(vbig/big_scaling, (vbig.stableNorm() * vbig.stableNormalized()).eval()/big_scaling); VERIFY_IS_APPROX(vsmall, vsmall.stableNorm() * vsmall.stableNormalized()); } } |