Browse Source

python: do more fuzzy comparisons for floats.

The new CircleCI macOS VM produces values that don't compare equal
anymore.
next
Vladimír Vondruš 4 months ago
parent
commit
1cc3ea8555
  1. 6
      src/python/magnum/test/test_math.py

6
src/python/magnum/test/test_math.py

@ -1492,8 +1492,8 @@ Matrix\\(2, 0, 0,
self.assertAlmostEqual(float(Deg(a.angle())), float(Deg(45.0)), 4) self.assertAlmostEqual(float(Deg(a.angle())), float(Deg(45.0)), 4)
self.assertEqual(a.axis(), Vector3.x_axis()) self.assertEqual(a.axis(), Vector3.x_axis())
self.assertEqual(a.to_matrix(), Matrix4.rotation_x(Deg(45.0)).rotation_scaling()) self.assertEqual(a.to_matrix(), Matrix4.rotation_x(Deg(45.0)).rotation_scaling())
self.assertEqual(a.dot(), 1.0) self.assertAlmostEqual(a.dot(), 1.0, 6)
self.assertEqual(a.length(), 1.0) self.assertAlmostEqual(a.length(), 1.0, 6)
self.assertEqual(a.conjugated(), Quaternion((-0.382683, 0.0, 0.0), 0.92388)) self.assertEqual(a.conjugated(), Quaternion((-0.382683, 0.0, 0.0), 0.92388))
self.assertEqual(a.inverted(), Quaternion.rotation(Deg(45.0), -Vector3.x_axis())) self.assertEqual(a.inverted(), Quaternion.rotation(Deg(45.0), -Vector3.x_axis()))
self.assertEqual(a.inverted_normalized(), Quaternion.rotation(Deg(45.0), -Vector3.x_axis())) self.assertEqual(a.inverted_normalized(), Quaternion.rotation(Deg(45.0), -Vector3.x_axis()))
@ -1518,7 +1518,7 @@ Matrix\\(2, 0, 0,
def test_functions(self): def test_functions(self):
a = Quaternion.rotation(Deg(45.0), Vector3d.x_axis()) a = Quaternion.rotation(Deg(45.0), Vector3d.x_axis())
b = Quaternion.rotation(Deg(-145.0), Vector3d.x_axis()) b = Quaternion.rotation(Deg(-145.0), Vector3d.x_axis())
self.assertEqual(math.dot(a, b), -0.08715575933456421) self.assertAlmostEqual(math.dot(a, b), -0.08715575933456421)
self.assertEqual(Deg(math.half_angle(a, b)), Deg(95.000001505251)) self.assertEqual(Deg(math.half_angle(a, b)), Deg(95.000001505251))
self.assertEqual(math.lerp(a, b, 0.25), Quaternion((0.0631263, 0.0, 0.0), 0.998006)) self.assertEqual(math.lerp(a, b, 0.25), Quaternion((0.0631263, 0.0, 0.0), 0.998006))
self.assertEqual(math.lerp_shortest_path(a, b, 0.25), Quaternion((-0.647912, 0.0, 0.0), -0.761715)) self.assertEqual(math.lerp_shortest_path(a, b, 0.25), Quaternion((-0.647912, 0.0, 0.0), -0.761715))

Loading…
Cancel
Save