| 588 | } |
| 589 | |
| 590 | bool Approx::equalityComparisonImpl(const double other) const { |
| 591 | // First try with fixed margin, then compute margin based on epsilon, scale and Approx's value |
| 592 | // Thanks to Richard Harris for his help refining the scaled margin value |
| 593 | return marginComparison(m_value, other, m_margin) |
| 594 | || marginComparison(m_value, other, m_epsilon * (m_scale + std::fabs(std::isinf(m_value)? 0 : m_value))); |
| 595 | } |
| 596 | |
| 597 | void Approx::setMargin(double newMargin) { |
| 598 | CATCH_ENFORCE(newMargin >= 0, |
no test coverage detected