public void ExamplesTest() { // Paroxetine 0.935 Assert.AreEqual(0.934, QED.Calculate(Chem.MolFromSmiles("c1cc2OCOc2cc1OCC1CNCCC1c1ccc(F)cc1")), 0.01); // Leflunomide 0.929 Assert.AreEqual(0.911, QED.Calculate(Chem.MolFromSmiles("C1=NOC(C)=C1C(=O)Nc1ccc(cc1)C(F)(F)F")), 0.01); // Clomipramine 0.779 Assert.AreEqual(0.818, QED.Calculate(Chem.MolFromSmiles("CN(C)CCCN1c2ccccc2CCc2ccc(Cl)cc21")), 0.01); // Tegaserod 0.213 Assert.AreEqual(0.235, QED.Calculate(Chem.MolFromSmiles("CCCCCNC(=N)NN=CC1=CNc2ccc(CO)cc21")), 0.01); }
public void NCI200Test() { foreach (var d in ReadTestData("NCI_200_qed.csv")) { Assert.AreEqual(d.Expected, QED.Calculate(d.Mol), 0.01, $"QED not equal to expected in line {d.LineNo}"); // Check that adding hydrogens will not change the result // This is currently not the case. Hydrogens change the number of rotatable bonds and the // number of alerts. var mol = d.Mol.AddHs(); Assert.AreEqual(d.Expected, QED.Calculate(mol), 0.01, $"QED not equal to expected in line {d.LineNo}"); } }
public void RegressionTest() { int failed = 0; foreach (var d in ReadTestData("Regression_qed.csv")) { if (Math.Abs(d.Expected - QED.Calculate(d.Mol)) > 0.01) { failed++; Trace.WriteLine($"QED not equal to expected in line {d.LineNo}"); } } if (failed > 1) { Assert.Fail(); } }