public static IAtomContainerSet getAllAgents(IReaction reaction) { IAtomContainerSet moleculeSet = reaction.getBuilder().newInstance(IAtomContainerSet.class); IAtomContainerSet agents = reaction.getAgents(); for (int i = 0; i < agents.getAtomContainerCount(); i++) { moleculeSet.addAtomContainer(agents.getAtomContainer(i)); } return moleculeSet; }
@Test public void testAddMapping_IMapping() { IReaction reaction = (IReaction) newChemObject(); IMapping mapping = reaction.getBuilder().newInstance(IMapping.class, reaction.getBuilder().newInstance(IAtom.class, "C"), reaction.getBuilder().newInstance(IAtom.class, "C")); reaction.addMapping(mapping); Iterator<IMapping> mappings = reaction.mappings().iterator(); Assert.assertNotNull(mappings); Assert.assertTrue(mappings.hasNext()); Assert.assertEquals(mapping, (IMapping) mappings.next()); }
@Test public void testGetMapping_int() { IReaction reaction = (IReaction) newChemObject(); IMapping mapping = reaction.getBuilder().newInstance(IMapping.class, reaction.getBuilder().newInstance(IAtom.class, "C"), reaction.getBuilder().newInstance(IAtom.class, "C")); reaction.addMapping(mapping); IMapping gotIt = reaction.getMapping(0); Assert.assertEquals(mapping, gotIt); }
@Test public void testGetMappingCount() { IReaction reaction = (IReaction) newChemObject(); IMapping mapping = reaction.getBuilder().newInstance(IMapping.class, reaction.getBuilder().newInstance(IAtom.class, "C"), reaction.getBuilder().newInstance(IAtom.class, "C")); reaction.addMapping(mapping); Assert.assertEquals(1, reaction.getMappingCount()); }
@Test public void testGetReactants() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer sodiumhydroxide = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer aceticAcid = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer water = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addReactant(sodiumhydroxide); reaction.addReactant(aceticAcid); reaction.addReactant(water); Assert.assertEquals(3, reaction.getReactants().getAtomContainerCount()); }
@Test public void testRemoveMapping_int() { IReaction reaction = (IReaction) newChemObject(); IMapping mapping = reaction.getBuilder().newInstance(IMapping.class, reaction.getBuilder().newInstance(IAtom.class, "C"), reaction.getBuilder().newInstance(IAtom.class, "C")); reaction.addMapping(mapping); Assert.assertEquals(1, reaction.getMappingCount()); reaction.removeMapping(0); Assert.assertEquals(0, reaction.getMappingCount()); }
@Test public void testGetProducts() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer sodiumhydroxide = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer aceticAcid = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer water = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addProduct(sodiumhydroxide); reaction.addProduct(aceticAcid); reaction.addProduct(water); Assert.assertEquals(3, reaction.getProducts().getAtomContainerCount()); }
@Test public void testGetReactantCoefficient_IAtomContainer() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addReactant(proton, 2.0); Assert.assertEquals(2.0, reaction.getReactantCoefficient(proton), 0.00001); Assert.assertEquals(-1.0, reaction.getReactantCoefficient(reaction.getBuilder().newInstance(IAtomContainer.class)), 0.00001); }
@Test public void testGetProductCoefficient_IAtomContainer() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addProduct(proton, 2.0); Assert.assertEquals(2.0, reaction.getProductCoefficient(proton), 0.00001); Assert.assertEquals(-1.0, reaction.getProductCoefficient(reaction.getBuilder().newInstance(IAtomContainer.class)), 0.00001); }
@Test public void testAddReactant_IAtomContainer_Double() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer sulfate = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addReactant(proton, 2d); reaction.addReactant(sulfate, 1d); Assert.assertEquals(2.0, reaction.getReactantCoefficient(proton), 0.00001); Assert.assertEquals(1.0, reaction.getReactantCoefficient(sulfate), 0.00001); }
@Test public void testAddProduct_IAtomContainer_Double() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer sulfate = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addProduct(proton, 2.0); reaction.addProduct(sulfate, 1.0); Assert.assertEquals(2.0, reaction.getProductCoefficient(proton), 0.00001); Assert.assertEquals(1.0, reaction.getProductCoefficient(sulfate), 0.00001); }
@Test public void testGetProductCoefficients() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer pr1 = reaction.getBuilder().newInstance(IAtomContainer.class); IAtomContainer pr2 = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addProduct(pr1, 1d); reaction.addProduct(pr2, 2d); Double[] pc = reaction.getProductCoefficients(); Assert.assertEquals(2.0, pc.length, 0.00001); Assert.assertEquals(reaction.getProductCoefficient(pr1), pc[0], 0.00001); Assert.assertEquals(2.0, pc[1], 0.00001); }
@Test public void testAddAgent_IAtomContainer() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addAgent(proton); Assert.assertEquals(1, reaction.getAgents().getAtomContainerCount()); }
@Test public void testSetReactantCoefficient_IAtomContainer_Double() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addReactant(proton, 2.0); reaction.setReactantCoefficient(proton, 3.0); Assert.assertEquals(3.0, reaction.getReactantCoefficient(proton), 0.00001); }
@Test public void testGetAgents() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer water = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addAgent(water); Assert.assertEquals(1, reaction.getAgents().getAtomContainerCount()); }
@Test public void testSetProductCoefficient_IAtomContainer_Double() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer proton = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addProduct(proton, 2.0); reaction.setProductCoefficient(proton, 1.0); Assert.assertEquals(1.0, reaction.getProductCoefficient(proton), 0.00001); }
@Test public void testGetProductCount() { IReaction reaction = (IReaction) newChemObject(); Assert.assertEquals(0, reaction.getProductCount()); reaction.addProduct(reaction.getBuilder().newInstance(IAtomContainer.class)); Assert.assertEquals(1, reaction.getProductCount()); }
@Test public void testGetReactantCount() { IReaction reaction = (IReaction) newChemObject(); Assert.assertEquals(0, reaction.getReactantCount()); reaction.addReactant(reaction.getBuilder().newInstance(IAtomContainer.class)); Assert.assertEquals(1, reaction.getReactantCount()); }
@Test public void testSetProductCoefficients_arrayDouble() { IReaction reaction = (IReaction) newChemObject(); IAtomContainer pr1 = reaction.getBuilder().newInstance(IAtomContainer.class); reaction.addProduct(pr1, 1d); Double[] pc = {2.0}; boolean coeffSet = reaction.setProductCoefficients(pc); Assert.assertTrue(coeffSet); Assert.assertEquals(2.0, reaction.getProductCoefficient(pr1), 0.00001); Double[] pcFalse = {1.0, 2.0}; Assert.assertFalse(reaction.setProductCoefficients(pcFalse)); }
protected static String cansmi(IReaction rxn) throws CDKException { IReaction copy = rxn.getBuilder().newInstance(IReaction.class); for (IAtomContainer mol : rxn.getReactants().atomContainers()) copy.addReactant(AtomContainerManipulator.copyAndSuppressedHydrogens(mol)); for (IAtomContainer mol : rxn.getProducts().atomContainers()) copy.addProduct(AtomContainerManipulator.copyAndSuppressedHydrogens(mol)); for (IAtomContainer mol : rxn.getAgents().atomContainers()) copy.addAgent(AtomContainerManipulator.copyAndSuppressedHydrogens(mol)); return smigen.create(copy); }