, boost unit test , .
, , (, 1-6). , , - .
, boost::test_tools::predicate_result, .
, , , :
#include <iostream>
#include <boost/test/floating_point_comparison.hpp>
int main() {
bool b = boost::test_tools::check_is_close(
0.01, 0.015, boost::test_tools::percent_tolerance(49.0));
std::cout << std::boolalpha << b << std::endl;
b = boost::test_tools::check_is_close(
0.01, 0.015, boost::test_tools::percent_tolerance(51.0));
std::cout << std::boolalpha << b << std::endl;
}
, , :
#include <cmath>
bool is_close(double a, double b, double epsilon = 1e-5) {
return std::fabs(a - b) < epsilon;
}