From 1240a82a3840d456dba01a31865c5cb1b8a70c2a Mon Sep 17 00:00:00 2001
From: Gabriel Studer <gabriel.studer@unibas.ch>
Date: Wed, 29 Nov 2023 16:15:22 +0100
Subject: [PATCH] relax precision in unit tests

We observed slight discrepancies when running the tests on certain
machines.
---
 loop/tests/test_all_atom_positions.cc | 6 +++---
 loop/tests/test_mm_system_creator.cc  | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/loop/tests/test_all_atom_positions.cc b/loop/tests/test_all_atom_positions.cc
index e25b4a21..d7011d08 100644
--- a/loop/tests/test_all_atom_positions.cc
+++ b/loop/tests/test_all_atom_positions.cc
@@ -315,21 +315,21 @@ BOOST_AUTO_TEST_CASE(test_aap_torsions) {
     if (!n_ter) {
       tor = res_list[i].GetPhiTorsion();
       if (tor.IsValid()) {
-        BOOST_CHECK_EQUAL(atoms.GetPhiTorsion(i), tor.GetAngle());
+        BOOST_CHECK_CLOSE(atoms.GetPhiTorsion(i), tor.GetAngle(), 1e-5);
       }
     }
     // psi
     if (!c_ter) {
       tor = res_list[i].GetPsiTorsion();
       if (tor.IsValid()) {
-        BOOST_CHECK_EQUAL(atoms.GetPsiTorsion(i), tor.GetAngle());
+        BOOST_CHECK_CLOSE(atoms.GetPsiTorsion(i), tor.GetAngle(), 1e-5);
       }
     }
     // omega
     if (!n_ter) {
       tor = res_list[i].GetOmegaTorsion();
       if (tor.IsValid()) {
-        BOOST_CHECK_EQUAL(atoms.GetOmegaTorsion(i), tor.GetAngle());
+        BOOST_CHECK_CLOSE(atoms.GetOmegaTorsion(i), tor.GetAngle(), 1e-5);
       }
     }
   }
diff --git a/loop/tests/test_mm_system_creator.cc b/loop/tests/test_mm_system_creator.cc
index 6cda3263..7a180a1f 100644
--- a/loop/tests/test_mm_system_creator.cc
+++ b/loop/tests/test_mm_system_creator.cc
@@ -240,7 +240,7 @@ void CompareFullSimulation(const AllAtomPositions& all_pos,
   for (uint i = 0; i < pos_ref.size(); ++i) {
     BOOST_CHECK(geom::Distance(pos[mapping[i]], pos_ref[i]) < 1e-5);
     BOOST_CHECK(geom::Distance(vel[mapping[i]], vel_ref[i]) < 1e-5);
-    BOOST_CHECK(geom::Distance(forces[mapping[i]], forces_ref[i]) < 1e-5);
+    BOOST_CHECK(geom::Distance(forces[mapping[i]], forces_ref[i]) < 1e-3);
   }
 
   // check mm_sim features (NOTE: DIFFs non-zero but that's expected...)
-- 
GitLab