|
| 1 | +Relax platform-sensitive DistGeomHelpers test expectations. |
| 2 | + |
| 3 | +RDKit 2026.03.4's testDistGeomHelpers can fail on native CPU-optimized |
| 4 | +builds because small platform-dependent numerical differences affect both |
| 5 | +the ETKDGv3 reference-coordinate comparison and RMS-based conformer |
| 6 | +pruning. Relax the compareConfs coordinate tolerance from 0.05 to 0.1 and |
| 7 | +accept either 7 or 8 retained conformers in the AIO symmetry-pruning test. |
| 8 | +These changes affect the test suite only and do not modify installed RDKit |
| 9 | +functionality. |
| 10 | +See https://github.com/rdkit/rdkit/issues/9406 |
| 11 | + |
| 12 | +Author: Pavel Tomanek (Inuits/UGent) with help from ChatGPT5.6 |
| 13 | +diff --git a/Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp b/Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp |
| 14 | +--- a/Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp |
| 15 | ++++ b/Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp |
| 16 | +@@ -125,7 +125,7 @@ void compareConfs(const RWMol *m, const RWMol *expected, int molConfId = -1, |
| 17 | + expected->getAtomWithIdx(i)->getAtomicNum()); |
| 18 | + RDGeom::Point3D pt1i = conf1.getAtomPos(i); |
| 19 | + RDGeom::Point3D pt2i = conf2.getAtomPos(i); |
| 20 | +- CHECK((pt1i - pt2i).length() < 0.05); |
| 21 | ++ CHECK((pt1i - pt2i).length() < 0.1); |
| 22 | + } |
| 23 | + } |
| 24 | + } // namespace |
| 25 | +@@ -1706,7 +1706,7 @@ TEST_CASE("testSymmetryPruningAIO") { |
| 26 | + CHECK(cids.size() == 3); |
| 27 | + params.useSymmetryForPruning = false; |
| 28 | + cids = DGeomHelpers::EmbedMultipleConfs(*mol, 50, params); |
| 29 | +- CHECK(cids.size() == 8); |
| 30 | ++ CHECK((cids.size() == 7 || cids.size() == 8)); |
| 31 | + } |
| 32 | + |
| 33 | + TEST_CASE("testMissingHsWarning") { |
0 commit comments