Ejemplo n.º 1
0
        public virtual void TestIsDisconnected()
        {
            Assert.IsFalse(azulene.IsDisconnected);

            IChemObjectBuilder builder = azulene.GetSpanningTree().Builder;
            IAtomContainer     disconnectedStructure = builder.NewAtomContainer();

            disconnectedStructure.Atoms.Add(builder.NewAtom("Na"));
            disconnectedStructure.Atoms[0].FormalCharge = +1;
            disconnectedStructure.Atoms.Add(builder.NewAtom("Cl"));
            disconnectedStructure.Atoms[1].FormalCharge = -1;
            SpanningTree stree = new SpanningTree(disconnectedStructure);

            Assert.IsTrue(stree.IsDisconnected);
        }
Ejemplo n.º 2
0
        public virtual void TestGetPath_IAtomContainer_IAtom_IAtom()
        {
            IAtomContainer ethaneMol = ethane.GetSpanningTree();
            IAtomContainer path      = SpanningTree.GetPath(ethaneMol, ethaneMol.Atoms[0], ethaneMol.Atoms[1]);

            Assert.AreEqual(2, path.Atoms.Count);
            Assert.AreEqual(1, path.Bonds.Count);

            IAtomContainer disconnectedStructure = builder.NewAtomContainer();

            disconnectedStructure.Atoms.Add(builder.NewAtom("Na"));
            disconnectedStructure.Atoms[0].FormalCharge = +1;
            disconnectedStructure.Atoms.Add(builder.NewAtom("Cl"));
            disconnectedStructure.Atoms[1].FormalCharge = -1;
            path = SpanningTree.GetPath(disconnectedStructure, disconnectedStructure.Atoms[0], disconnectedStructure.Atoms[1]);
            Assert.IsNotNull(path);
            Assert.AreEqual(0, path.Atoms.Count);
            Assert.AreEqual(0, path.Bonds.Count);
        }