Unfortunately, I don't think we can change assertAlmostEqual. If we
change the implementation, tests which were passing may fail, and tests
which were failing may pass.
The actual fuzzy comparison itself is handled by a function
approx_equal(x, y, tol, rel).
and check that it does nothing unreasonable;
- since there are considerable disagreements about the right way to
handle a fuzzy comparison when *both* an absolute and relative error
are given, people who disagree with the default definition can simply
subclass TestCase and redefine the approx_equal method.
(Which is much simpler than having to write the whole assertApproxEqual
method from scratch.)
"is_close", since neither guess nor new_guess is "correct", they are
both approximations.