/** * Validate the RDBRule of this IMolecularFormula. * * @param formula Parameter is the IMolecularFormula * @return A double value meaning 1.0 True, 0.0 False */ @Override public double validate(IMolecularFormula formula) throws CDKException { logger.info("Start validation of ", formula); List<Double> RDBEList = getRDBEValue(formula); for (Iterator<Double> it = RDBEList.iterator(); it.hasNext();) { double RDBE = it.next(); if (min <= RDBE && RDBE <= 30) if (validate(formula, RDBE)) return 1.0; } return 0.0; }
/** * A unit test suite for JUnit. * * @return The test suite */ @Test public void testGetRDBEValue_IMolecularFormula() throws ClassNotFoundException, CDKException, Exception { RDBERule rule = new RDBERule(); IMolecularFormula formula = MolecularFormulaManipulator.getMajorIsotopeMolecularFormula("C2H4", builder); Assert.assertEquals(1.0, rule.getRDBEValue(formula).get(0), 0.0001); }
/** * A unit test suite for JUnit.C3H8O3S2 * * @return The test suite */ @Test public void test1() throws ClassNotFoundException, CDKException, Exception { RDBERule rule = new RDBERule(); IMolecularFormula formula = MolecularFormulaManipulator.getMajorIsotopeMolecularFormula("C3H8O3S2", builder); List<Double> value = rule.getRDBEValue(formula); Assert.assertEquals(6, value.size(), 0.0001); Assert.assertEquals(0.0, value.get(0), 0.0001); Assert.assertEquals(1.0, rule.validate(formula), 0.0001); }
/** * A unit test suite for JUnit.C2H11N4O4 * * @return The test suite */ @Test public void testDefaultValidFalse_SetParam() throws ClassNotFoundException, CDKException, Exception { RDBERule rule = new RDBERule(); IMolecularFormula formula = MolecularFormulaManipulator.getMajorIsotopeMolecularFormula("CH2F10S2", builder); List<Double> value = rule.getRDBEValue(formula); Assert.assertEquals(6, value.size(), 0.0001); Assert.assertEquals(-4.0, value.get(0), 0.0001); Assert.assertEquals(-3.0, value.get(1), 0.0001); Assert.assertEquals(-2.0, value.get(2), 0.0001); Assert.assertEquals(-2.0, value.get(3), 0.0001); Assert.assertEquals(-1.0, value.get(4), 0.0001); Assert.assertEquals(0.0, value.get(5), 0.0001); Assert.assertEquals(1.0, rule.validate(formula), 0.0001); }