Permalink
Browse files

Made SmilesParser independent from IMolecule

Signed-off-by: Rajarshi  Guha <rajarshi.guha@gmail.com>
  • Loading branch information...
1 parent 9f05e5c commit 6bf4aa2b7e9cd3b99a9591ed906b22dd058a64b3 @egonw egonw committed with rajarshi Dec 11, 2011
Showing with 702 additions and 677 deletions.
  1. +2 −2 src/main/org/openscience/cdk/io/MoSSOutputReader.java
  2. +9 −9 src/main/org/openscience/cdk/io/SMILESReader.java
  3. +2 −2 src/main/org/openscience/cdk/io/iterator/IteratingSMILESReader.java
  4. +3 −4 src/main/org/openscience/cdk/layout/RingPlacer.java
  5. +7 −7 src/main/org/openscience/cdk/layout/StructureDiagramGenerator.java
  6. +14 −17 src/main/org/openscience/cdk/smiles/SmilesParser.java
  7. +1 −2 src/main/org/openscience/cdk/structgen/VicinitySampler.java
  8. +2 −2 src/test/org/openscience/cdk/aromaticity/AromaticityCalculatorTest.java
  9. +14 −14 src/test/org/openscience/cdk/aromaticity/CDKHueckelAromaticityDetectorTest.java
  10. +13 −13 src/test/org/openscience/cdk/atomtype/CDKAtomTypeMatcherSMILESTest.java
  11. +3 −2 src/test/org/openscience/cdk/atomtype/EStateAtomTypeMatcherTest.java
  12. +2 −2 src/test/org/openscience/cdk/atomtype/RepeatedCDKAtomTypeMatcherSMILESTest.java
  13. +2 −2 src/test/org/openscience/cdk/charges/MMFF94PartialChargesTest.java
  14. +10 −10 src/test/org/openscience/cdk/charges/PolarizabilityTest.java
  15. +7 −7 src/test/org/openscience/cdk/fingerprint/MACCSFingerprinterTest.java
  16. +10 −10 src/test/org/openscience/cdk/fingerprint/PubchemFingerprinterTest.java
  17. +11 −11 src/test/org/openscience/cdk/geometry/cip/CIPSMILESTest.java
  18. +5 −5 src/test/org/openscience/cdk/geometry/cip/CIPToolTest.java
  19. +2 −2 src/test/org/openscience/cdk/geometry/cip/ImplicitHydrogenLigandTest.java
  20. +3 −3 src/test/org/openscience/cdk/geometry/cip/LigandTest.java
  21. +2 −2 src/test/org/openscience/cdk/geometry/cip/TerminalLigandTest.java
  22. +2 −2 src/test/org/openscience/cdk/geometry/cip/rules/AtomicNumberRuleTest.java
  23. +11 −11 src/test/org/openscience/cdk/geometry/cip/rules/CIPLigandRuleTest.java
  24. +2 −2 src/test/org/openscience/cdk/geometry/cip/rules/CombinedAtomicMassNumberRuleTest.java
  25. +2 −2 src/test/org/openscience/cdk/geometry/cip/rules/MassNumberRuleTest.java
  26. +17 −17 src/test/org/openscience/cdk/geometry/volume/VABCVolumeTest.java
  27. +1 −1 src/test/org/openscience/cdk/graph/PathToolsTest.java
  28. +2 −2 src/test/org/openscience/cdk/graph/invariant/CanonicalLabelerTest.java
  29. +6 −6 src/test/org/openscience/cdk/graph/invariant/ConjugatedPiSystemsDetectorTest.java
  30. +2 −2 src/test/org/openscience/cdk/graph/matrix/AdjacencyMatrixTest.java
  31. +1 −2 src/test/org/openscience/cdk/graph/matrix/ConnectionMatrixTest.java
  32. +2 −2 src/test/org/openscience/cdk/gui/smiles/SmilesParserTest.java
  33. +2 −1 src/test/org/openscience/cdk/io/MDLV2000WriterTest.java
  34. +3 −3 src/test/org/openscience/cdk/isomorphism/IsomorphismTesterTest.java
  35. +12 −12 src/test/org/openscience/cdk/isomorphism/UniversalIsomorphismTesterTest.java
  36. +15 −15 src/test/org/openscience/cdk/layout/StructureDiagramGeneratorTest.java
  37. +7 −6 src/test/org/openscience/cdk/layout/TemplateHandlerTest.java
  38. +1 −1 src/test/org/openscience/cdk/modeling/builder3d/ModelBuilder3DTest.java
  39. +4 −4 src/test/org/openscience/cdk/qsar/descriptors/atomic/AtomHybridizationVSEPRDescriptorTest.java
  40. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/atomic/CovalentRadiusDescriptorTest.java
  41. +8 −8 src/test/org/openscience/cdk/qsar/descriptors/atomic/EffectiveAtomPolarizabilityDescriptorTest.java
  42. +21 −21 src/test/org/openscience/cdk/qsar/descriptors/atomic/IPAtomicHOSEDescriptorTest.java
  43. +22 −21 src/test/org/openscience/cdk/qsar/descriptors/atomic/IPAtomicLearningDescriptorTest.java
  44. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/atomic/IsProtonInAromaticSystemDescriptorTest.java
  45. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/atomic/IsProtonInConjugatedPiSystemDescriptorTest.java
  46. +14 −13 src/test/org/openscience/cdk/qsar/descriptors/atomic/PartialPiChargeDescriptorTest.java
  47. +9 −8 src/test/org/openscience/cdk/qsar/descriptors/atomic/PartialSigmaChargeDescriptorTest.java
  48. +3 −3 src/test/org/openscience/cdk/qsar/descriptors/atomic/PartialTChargeMMFF94DescriptorTest.java
  49. +4 −3 src/test/org/openscience/cdk/qsar/descriptors/atomic/PartialTChargePEOEDescriptorTest.java
  50. +15 −14 src/test/org/openscience/cdk/qsar/descriptors/atomic/PiElectronegativityDescriptorTest.java
  51. +3 −3 src/test/org/openscience/cdk/qsar/descriptors/atomic/ProtonTotalPartialChargeDescriptorTest.java
  52. +10 −9 src/test/org/openscience/cdk/qsar/descriptors/atomic/SigmaElectronegativityDescriptorTest.java
  53. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/atomic/VdWRadiusDescriptorTest.java
  54. +5 −5 src/test/org/openscience/cdk/qsar/descriptors/bond/BondPartialPiChargeDescriptorTest.java
  55. +8 −8 src/test/org/openscience/cdk/qsar/descriptors/bond/BondPartialSigmaChargeDescriptorTest.java
  56. +5 −5 src/test/org/openscience/cdk/qsar/descriptors/bond/BondPartialTChargeDescriptorTest.java
  57. +8 −8 src/test/org/openscience/cdk/qsar/descriptors/bond/BondSigmaElectronegativityDescriptorTest.java
  58. +10 −10 src/test/org/openscience/cdk/qsar/descriptors/bond/IPBondLearningDescriptorTest.java
  59. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/molecular/APolDescriptorTest.java
  60. +6 −5 src/test/org/openscience/cdk/qsar/descriptors/molecular/AcidicGroupCountDescriptorTest.java
  61. +1 −1 src/test/org/openscience/cdk/qsar/descriptors/molecular/BCUTDescriptorTest.java
  62. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/molecular/BPolDescriptorTest.java
  63. +3 −2 src/test/org/openscience/cdk/qsar/descriptors/molecular/BasicGroupCountDescriptorTest.java
  64. +4 −4 src/test/org/openscience/cdk/qsar/descriptors/molecular/CarbonTypesDescriptorTest.java
  65. +11 −10 src/test/org/openscience/cdk/qsar/descriptors/molecular/IPMolecularLearningDescriptorTest.java
  66. +2 −2 src/test/org/openscience/cdk/qsar/descriptors/molecular/RuleOfFiveDescriptorTest.java
  67. +9 −9 src/test/org/openscience/cdk/qsar/descriptors/molecular/TPSADescriptorTest.java
  68. +2 −1 src/test/org/openscience/cdk/qsar/descriptors/molecular/VABCDescriptorTest.java
  69. +20 −20 src/test/org/openscience/cdk/qsar/descriptors/molecular/XLogPDescriptorTest.java
  70. +3 −3 src/test/org/openscience/cdk/renderer/AtomContainerRendererTest.java
  71. +2 −2 src/test/org/openscience/cdk/ringsearch/AllRingsFinderTest.java
  72. +5 −5 src/test/org/openscience/cdk/ringsearch/SSSRFinderTest.java
  73. +3 −3 src/test/org/openscience/cdk/signature/MoleculeSignatureTest.java
  74. +10 −11 src/test/org/openscience/cdk/similarity/TanimotoTest.java
  75. +8 −8 src/test/org/openscience/cdk/smiles/SmilesGeneratorTest.java
  76. +154 −148 src/test/org/openscience/cdk/smiles/SmilesParserTest.java
  77. +6 −5 src/test/org/openscience/cdk/smiles/smarts/SMARTSQueryToolTest.java
  78. +6 −7 src/test/org/openscience/cdk/smsd/SMSDTest.java
  79. +6 −4 src/test/org/openscience/cdk/smsd/algorithm/mcsplus/MCSPlusHandlerTest.java
  80. +6 −4 src/test/org/openscience/cdk/smsd/algorithm/rgraph/CDKMCSHandlerTest.java
  81. +7 −6 src/test/org/openscience/cdk/smsd/algorithm/vflib/Molecules.java
  82. +14 −13 src/test/org/openscience/cdk/smsd/algorithm/vflib/VFMapperTest.java
  83. +6 −4 src/test/org/openscience/cdk/smsd/algorithm/vflib/VFlibMCSHandlerTest.java
  84. +6 −4 src/test/org/openscience/cdk/smsd/algorithm/vflib/VFlibTurboHandlerTest.java
  85. +5 −4 src/test/org/openscience/cdk/smsd/factory/SubStructureSearchAlgorithmsTest.java
  86. +2 −1 src/test/org/openscience/cdk/structgen/VicinitySamplerTest.java
  87. +1 −1 src/test/org/openscience/cdk/tools/CDKValencyCheckerTest.java
  88. +6 −5 src/test/org/openscience/cdk/tools/HOSECodeGeneratorTest.java
  89. +2 −2 src/test/org/openscience/cdk/tools/IonizationPotentialToolTest.java
  90. +3 −3 src/test/org/openscience/cdk/tools/LonePairElectronCheckerTest.java
  91. +6 −6 src/test/org/openscience/cdk/tools/manipulator/AtomContainerManipulatorTest.java
  92. +4 −4 src/test/org/openscience/cdk/tools/manipulator/ReactionManipulatorTest.java
@@ -32,12 +32,12 @@
import org.openscience.cdk.annotations.TestMethod;
import org.openscience.cdk.exception.CDKException;
import org.openscience.cdk.exception.InvalidSmilesException;
+import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IAtomContainerSet;
import org.openscience.cdk.interfaces.IChemFile;
import org.openscience.cdk.interfaces.IChemModel;
import org.openscience.cdk.interfaces.IChemObject;
import org.openscience.cdk.interfaces.IChemSequence;
-import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.io.formats.IResourceFormat;
import org.openscience.cdk.io.formats.MoSSOutputFormat;
import org.openscience.cdk.smiles.SmilesParser;
@@ -176,7 +176,7 @@ private IAtomContainerSet readAtomContainerSet(IAtomContainerSet molSet) throws
while (line != null) {
String[] cols = line.split(",");
try {
- IMolecule mol = parser.parseSmiles(cols[1]);
+ IAtomContainer mol = parser.parseSmiles(cols[1]);
mol.setProperty("focusSupport", cols[5]);
mol.setProperty("complementSupport", cols[7]);
mol.setProperty("atomCount", cols[2]);
@@ -28,28 +28,28 @@
*/
package org.openscience.cdk.io;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.io.StringReader;
+
import org.openscience.cdk.annotations.TestClass;
import org.openscience.cdk.annotations.TestMethod;
import org.openscience.cdk.exception.CDKException;
+import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IAtomContainerSet;
import org.openscience.cdk.interfaces.IChemFile;
import org.openscience.cdk.interfaces.IChemModel;
import org.openscience.cdk.interfaces.IChemObject;
import org.openscience.cdk.interfaces.IChemSequence;
-import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.io.formats.IResourceFormat;
import org.openscience.cdk.io.formats.SMILESFormat;
import org.openscience.cdk.smiles.SmilesParser;
import org.openscience.cdk.tools.ILoggingTool;
import org.openscience.cdk.tools.LoggingToolFactory;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.io.StringReader;
-
/**
* This Reader reads files which has one SMILES string on each
* line, where the format is given as below:
@@ -179,7 +179,7 @@ private IAtomContainerSet readAtomContainerSet(IAtomContainerSet som) {
logger.debug("Line contains SMILES and name: ", SMILES, " + " , name);
try {
- IMolecule molecule = sp.parseSmiles(SMILES);
+ IAtomContainer molecule = sp.parseSmiles(SMILES);
som.addAtomContainer(molecule);
if (name != null) {
molecule.setProperty("SMIdbNAME", name);
@@ -32,8 +32,8 @@
import org.openscience.cdk.CDKConstants;
import org.openscience.cdk.annotations.TestClass;
import org.openscience.cdk.annotations.TestMethod;
+import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IChemObject;
-import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.interfaces.IChemObjectBuilder;
import org.openscience.cdk.io.formats.IResourceFormat;
import org.openscience.cdk.io.formats.SMILESFormat;
@@ -70,7 +70,7 @@
private boolean nextAvailableIsKnown;
private boolean hasNext;
- private IMolecule nextMolecule;
+ private IAtomContainer nextMolecule;
/**
* Constructs a new IteratingSMILESReader that can read Molecule from a given Reader.
@@ -39,7 +39,6 @@
import org.openscience.cdk.interfaces.IAtom;
import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IBond;
-import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.interfaces.IRing;
import org.openscience.cdk.interfaces.IRingSet;
import org.openscience.cdk.tools.ILoggingTool;
@@ -61,7 +60,7 @@
private static ILoggingTool logger =
LoggingToolFactory.createLoggingTool(RingPlacer.class);
- private IMolecule molecule;
+ private IAtomContainer molecule;
private AtomPlacer atomPlacer = new AtomPlacer();
@@ -739,12 +738,12 @@ void placeConnectedRings(IRingSet rs, IRing ring, int handleType, double bondLen
}
}
- public IMolecule getMolecule()
+ public IAtomContainer getMolecule()
{
return this.molecule;
}
- public void setMolecule(IMolecule molecule)
+ public void setMolecule(IAtomContainer molecule)
{
this.molecule = molecule;
}
@@ -85,7 +85,7 @@
private static TemplateHandler DEFAULT_TEMPLATE_HANDLER = null;
- private IMolecule molecule;
+ private IAtomContainer molecule;
private IRingSet sssr;
private double bondLength = 1.5;
private Vector2d firstBondVector;
@@ -114,7 +114,7 @@ public StructureDiagramGenerator()
*
* @param molecule The molecule to be layed out.
*/
- public StructureDiagramGenerator(IMolecule molecule) {
+ public StructureDiagramGenerator(IAtomContainer molecule) {
this();
setMolecule(molecule, false);
templateHandler = new TemplateHandler(molecule.getBuilder());
@@ -129,7 +129,7 @@ public StructureDiagramGenerator(IMolecule molecule) {
* @param mol the molecule for which coordinates are to be generated.
* @param clone Should the whole process be performed with a cloned copy?
*/
- public void setMolecule(IMolecule mol, boolean clone) {
+ public void setMolecule(IAtomContainer mol, boolean clone) {
templateHandler = new TemplateHandler(mol.getBuilder());
IAtom atom = null;
if (clone)
@@ -218,7 +218,7 @@ public TemplateHandler getTemplateHandler()
*
* @param molecule the molecule for which coordinates are to be generated.
*/
- public void setMolecule(IMolecule molecule)
+ public void setMolecule(IAtomContainer molecule)
{
setMolecule(molecule, true);
}
@@ -230,7 +230,7 @@ public void setMolecule(IMolecule molecule)
* @return The molecule with new coordinates (if generateCoordinates() had
* been called)
*/
- public IMolecule getMolecule()
+ public IAtomContainer getMolecule()
{
return molecule;
}
@@ -258,8 +258,8 @@ public void generateExperimentalCoordinates() throws CDKException
*/
public void generateExperimentalCoordinates(Vector2d firstBondVector) throws CDKException {
// first make a shallow copy: Atom/Bond references are kept
- IMolecule original = molecule;
- IMolecule shallowCopy = molecule.getBuilder().newInstance(IMolecule.class,molecule);
+ IAtomContainer original = molecule;
+ IAtomContainer shallowCopy = molecule.getBuilder().newInstance(IAtomContainer.class,molecule);
// ok, delete H's from
//IAtom[] atoms = shallowCopy.getAtoms();
for (int i = 0; i < shallowCopy.getAtomCount(); i++) {
@@ -1,6 +1,4 @@
-/* $Revision$ $Author$ $Date$
- *
- * Copyright (C) 2002-2007 Christoph Steinbeck <steinbeck@users.sf.net>
+/* Copyright (C) 2002-2007 Christoph Steinbeck <steinbeck@users.sf.net>
* 200?-2007 Egon Willighagen <egonw@users.sf.net>
*
* Contact: cdk-devel@lists.sourceforge.net
@@ -48,7 +46,6 @@
import org.openscience.cdk.interfaces.IBond;
import org.openscience.cdk.interfaces.IBond.Order;
import org.openscience.cdk.interfaces.IChemObjectBuilder;
-import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.interfaces.IPseudoAtom;
import org.openscience.cdk.interfaces.IReaction;
import org.openscience.cdk.interfaces.ITetrahedralChirality;
@@ -142,7 +139,7 @@ public SmilesParser(IChemObjectBuilder builder)
IAtom[] ringOtherAtoms = null;
IBond.Order[] ringbonds = null;
int thisRing = -1;
- IMolecule molecule = null;
+ IAtomContainer molecule = null;
String currentSymbol = null;
Map<IAtom,TemporaryChiralityStorage> chiralityInfo = null;
@@ -195,30 +192,30 @@ public IReaction parseReactionSmiles(String smiles) throws InvalidSmilesExceptio
IReaction reaction = builder.newInstance(IReaction.class);
// add reactants
- IMolecule reactantContainer = parseSmiles(reactantSmiles);
+ IAtomContainer reactantContainer = parseSmiles(reactantSmiles);
IAtomContainerSet reactantSet = ConnectivityChecker.partitionIntoMolecules(reactantContainer);
for (int i = 0; i < reactantSet.getAtomContainerCount(); i++)
{
- reaction.addReactant((IMolecule)reactantSet.getAtomContainer(i));
+ reaction.addReactant(reactantSet.getAtomContainer(i));
}
// add reactants
if (agentSmiles.length() > 0)
{
- IMolecule agentContainer = parseSmiles(agentSmiles);
+ IAtomContainer agentContainer = parseSmiles(agentSmiles);
IAtomContainerSet agentSet = ConnectivityChecker.partitionIntoMolecules(agentContainer);
for (int i = 0; i < agentSet.getAtomContainerCount(); i++)
{
- reaction.addAgent((IMolecule)agentSet.getAtomContainer(i));
+ reaction.addAgent(agentSet.getAtomContainer(i));
}
}
// add products
- IMolecule productContainer = parseSmiles(productSmiles);
+ IAtomContainer productContainer = parseSmiles(productSmiles);
IAtomContainerSet productSet = ConnectivityChecker.partitionIntoMolecules(productContainer);
for (int i = 0; i < productSet.getAtomContainerCount(); i++)
{
- reaction.addProduct((IMolecule)productSet.getAtomContainer(i));
+ reaction.addProduct(productSet.getAtomContainer(i));
}
return reaction;
@@ -234,8 +231,8 @@ public IReaction parseReactionSmiles(String smiles) throws InvalidSmilesExceptio
*@throws InvalidSmilesException thrown when the SMILES string is invalid
*/
@TestMethod("testAromaticSmiles,testSFBug1296113")
- public IMolecule parseSmiles(String smiles) throws InvalidSmilesException {
- IMolecule molecule = this.parseString(smiles);
+ public IAtomContainer parseSmiles(String smiles) throws InvalidSmilesException {
+ IAtomContainer molecule = this.parseString(smiles);
// analyze the chirality info
for (IAtom atom : chiralityInfo.keySet()) {
@@ -296,7 +293,7 @@ public IMolecule parseSmiles(String smiles) throws InvalidSmilesException {
* @return
* @throws InvalidSmilesException
*/
- private IMolecule parseString(String smiles) throws InvalidSmilesException
+ private IAtomContainer parseString(String smiles) throws InvalidSmilesException
{
logger.debug("parseSmiles()...");
IBond bond = null;
@@ -306,7 +303,7 @@ private IMolecule parseString(String smiles) throws InvalidSmilesException
boolean bondExists = true;
thisRing = -1;
currentSymbol = null;
- molecule = builder.newInstance(IMolecule.class);
+ molecule = builder.newInstance(IAtomContainer.class);
position = 0;
chiralityInfo = new HashMap<IAtom,TemporaryChiralityStorage>();
// we don't want more than 1024 rings
@@ -986,7 +983,7 @@ private void replaceTemplateAtomInStereos(IAtom templateAtom, IAtom atom) {
}
}
- private void addImplicitHydrogens(IMolecule container) {
+ private void addImplicitHydrogens(IAtomContainer container) {
try {
logger.debug("before H-adding: ", container);
Iterator<IAtom> atoms = container.atoms().iterator();
@@ -1002,7 +999,7 @@ private void addImplicitHydrogens(IMolecule container) {
}
}
- private void perceiveAromaticity(IMolecule m) {
+ private void perceiveAromaticity(IAtomContainer m) {
IAtomContainerSet moleculeSet = ConnectivityChecker.partitionIntoMolecules(m);
logger.debug("#mols ", moleculeSet.getAtomContainerCount());
for (int i = 0; i < moleculeSet.getAtomContainerCount(); i++) {
@@ -31,7 +31,6 @@
import org.openscience.cdk.interfaces.IAtom;
import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IBond;
-import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.math.MathTools;
import org.openscience.cdk.tools.ILoggingTool;
import org.openscience.cdk.tools.LoggingToolFactory;
@@ -60,7 +59,7 @@
* in ac and establish all of the possible bonding schemes according to
* Faulon's equations.
*/
- public static List sample(IMolecule ac) {
+ public static List sample(IAtomContainer ac) {
logger.debug("RandomGenerator->mutate() Start");
List structures = new ArrayList();
@@ -24,7 +24,7 @@
import org.junit.Test;
import org.openscience.cdk.CDKTestCase;
import org.openscience.cdk.DefaultChemObjectBuilder;
-import org.openscience.cdk.interfaces.IMolecule;
+import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IRing;
import org.openscience.cdk.interfaces.IRingSet;
import org.openscience.cdk.ringsearch.AllRingsFinder;
@@ -43,7 +43,7 @@ public AromaticityCalculatorTest() {
public void testIsAromatic_IRing_IAtomContainer() throws Exception {
SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());
- IMolecule mol = sp.parseSmiles("c1ccncc1");
+ IAtomContainer mol = sp.parseSmiles("c1ccncc1");
IRingSet rs = (new AllRingsFinder()).findAllRings(mol);
Assert.assertEquals(1, rs.getAtomContainerCount());
Oops, something went wrong.

0 comments on commit 6bf4aa2

Please sign in to comment.