Exemple #1
0
        public virtual void ToRingSet()
        {
            IAtomContainer biphenyl         = MakeBiphenyl();
            IRingSet       rs               = Cycles.FindVertexShort(biphenyl).ToRingSet();
            IEnumerator <IAtomContainer> it = rs.GetEnumerator();

            Assert.IsTrue(it.MoveNext());
            IAtomContainer r1 = it.Current;

            Assert.AreEqual(r1.Atoms[0], biphenyl.Atoms[0]);
            Assert.AreEqual(r1.Atoms[1], biphenyl.Atoms[1]);
            Assert.AreEqual(r1.Atoms[2], biphenyl.Atoms[2]);
            Assert.AreEqual(r1.Atoms[3], biphenyl.Atoms[3]);
            Assert.AreEqual(r1.Atoms[4], biphenyl.Atoms[4]);
            Assert.AreEqual(r1.Atoms[5], biphenyl.Atoms[5]);

            Assert.AreEqual(r1.Bonds[0], biphenyl.Bonds[0]);
            Assert.AreEqual(r1.Bonds[1], biphenyl.Bonds[1]);
            Assert.AreEqual(r1.Bonds[2], biphenyl.Bonds[2]);
            Assert.AreEqual(r1.Bonds[3], biphenyl.Bonds[3]);
            Assert.AreEqual(r1.Bonds[4], biphenyl.Bonds[4]);
            Assert.AreEqual(r1.Bonds[5], biphenyl.Bonds[5]);

            Assert.IsTrue(it.MoveNext());
            IAtomContainer r2 = it.Current;

            Assert.AreEqual(r2.Atoms[0], biphenyl.Atoms[6]);
            Assert.AreEqual(r2.Atoms[1], biphenyl.Atoms[7]);
            Assert.AreEqual(r2.Atoms[2], biphenyl.Atoms[8]);
            Assert.AreEqual(r2.Atoms[3], biphenyl.Atoms[9]);
            Assert.AreEqual(r2.Atoms[4], biphenyl.Atoms[10]);
            Assert.AreEqual(r2.Atoms[5], biphenyl.Atoms[11]);

            Assert.AreEqual(r2.Bonds[0], biphenyl.Bonds[7]);
            Assert.AreEqual(r2.Bonds[1], biphenyl.Bonds[8]);
            Assert.AreEqual(r2.Bonds[2], biphenyl.Bonds[9]);
            Assert.AreEqual(r2.Bonds[3], biphenyl.Bonds[10]);
            Assert.AreEqual(r2.Bonds[4], biphenyl.Bonds[11]);
            Assert.AreEqual(r2.Bonds[5], biphenyl.Bonds[12]);
        }