17GTEST_API_ AssertionResult
DoubleNearPredFormat(
const char* expr1,
const char* expr2,
const char* abs_error_expr, storm::RationalNumber val1,
18 storm::RationalNumber val2, storm::RationalNumber abs_error) {
19 const storm::RationalNumber diff = storm::utility::abs<storm::RationalNumber>(val1 - val2);
20 if (diff <= abs_error)
21 return AssertionSuccess();
22 return AssertionFailure() <<
"The difference between " << expr1 <<
" and " << expr2 <<
" is " << diff <<
" (approx. "
23 << storm::utility::convertNumber<double>(diff) <<
"), which exceeds " << abs_error_expr <<
", where\n"
24 << expr1 <<
" evaluates to " << val1 <<
" (approx. " << storm::utility::convertNumber<double>(val1) <<
"),\n"
25 << expr2 <<
" evaluates to " << val2 <<
" (approx. " << storm::utility::convertNumber<double>(val2) <<
"),\n"
26 << abs_error_expr <<
" evaluates to " << abs_error <<
" (approx. " << storm::utility::convertNumber<double>(abs_error) <<
").";