def test_point_equal(): p1 = Point(0,0.001234567890123456786) p2 = Point(0,0.001234567890123456987) eq = p1.equals(p2) ok_(eq==False, eq) aeq = p1.almost_equals(p2,18) ok_(aeq==True, aeq) assert_aae(p1.coords[:][0], p2.coords[:][0],18) assert_ape(p1.coords[:][0][1], p2.coords[:][0][1],16)
def feq(a, b, digit=DIGIT): # ? a == b without leading zeros if fabs(b) < pow(10,-digit+1): # b == 0 if fabs(a) < pow(10,-digit+1): # a == 0 return True else: return False elif fabs(a) < pow(10,-digit+1): # a == 0 if fabs(b) < pow(10,-digit+1): # b == 0 return True else: return False else: try: assert_ape(a, b, digit) except AssertionError: return False else: return True