Exemple #1
0
        public void Test2LetterSMARTS()
        {
            var query = SMARTSParser.Parse("Sc1ccccc1", ChemObjectBuilder.Instance);

            Assert.AreEqual(7, query.Atoms.Count);
            Assert.AreEqual("S", query.Atoms[0].Symbol);
        }
Exemple #2
0
        public void Test2LetterSMARTS()
        {
            var query = SMARTSParser.Parse("Sc1ccccc1");

            Assert.AreEqual(7, query.Atoms.Count);
            Assert.AreEqual("S", query.Atoms[0].Symbol);
        }
Exemple #3
0
        public void TestTotalHCount()
        {
            var container = SMARTSParser.Parse("[H2]", ChemObjectBuilder.Instance);

            Assert.AreEqual(1, container.Atoms.Count);
            IAtom atom = container.Atoms[0];

            Assert.IsTrue(atom is SMARTSAtom);
        }
Exemple #4
0
        public void TestImplicitHCount()
        {
            var container = SMARTSParser.Parse("[h3]");

            Assert.AreEqual(1, container.Atoms.Count);
            IAtom atom = container.Atoms[0];

            Assert.IsTrue(atom is SMARTSAtom);
        }
Exemple #5
0
 private void InitializeQuery()
 {
     mappings = null;
     if (!cache.TryGetValue(smarts, out query))
     {
         query         = SMARTSParser.Parse(smarts);
         cache[smarts] = query;
     }
 }
Exemple #6
0
        public void TestDegree()
        {
            var container = SMARTSParser.Parse("[D2]");

            Assert.AreEqual(1, container.Atoms.Count);
            IAtom atom = container.Atoms[0];

            Assert.IsTrue(atom is SMARTSAtom);
        }
Exemple #7
0
        public void TestQueryAtomCreation()
        {
            var container = SMARTSParser.Parse("*");

            Assert.AreEqual(1, container.Atoms.Count);
            IAtom atom = container.Atoms[0];

            Assert.IsTrue(atom is SMARTSAtom);
        }
Exemple #8
0
        public void TestAliphaticAtom()
        {
            var container = SMARTSParser.Parse("A");

            Assert.AreEqual(1, container.Atoms.Count);
            IAtom atom = container.Atoms[0];

            Assert.IsTrue(atom is SMARTSAtom);
        }
Exemple #9
0
        public void TestAromaticBond()
        {
            var container = SMARTSParser.Parse("C:C", ChemObjectBuilder.Instance);

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            var bond = container.Bonds[0];

            Assert.IsTrue(bond is AromaticQueryBond);
        }
Exemple #10
0
        public void TestAnyOrderBond()
        {
            var container = SMARTSParser.Parse("C~C");

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            var bond = container.Bonds[0];

            Assert.IsTrue(bond is AnyOrderQueryBond);
        }
Exemple #11
0
        public void TestAnyOrderBond()
        {
            var container = SMARTSParser.Parse("C~C", ChemObjectBuilder.Instance);

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            IBond bond = container.Bonds[0];

            Assert.IsTrue(bond is AnyOrderQueryBond);
        }
Exemple #12
0
        public void TestAromaticBond()
        {
            var container = SMARTSParser.Parse("C:C");

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            IBond bond = container.Bonds[0];

            Assert.IsTrue(bond is AromaticQueryBond);
        }
Exemple #13
0
        public void TestTripleBond()
        {
            var container = SMARTSParser.Parse("C#C");

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            var bond = container.Bonds[0];

            Assert.IsTrue(bond is OrderQueryBond);
            var qBond = (OrderQueryBond)bond;

            Assert.AreEqual(BondOrder.Triple, qBond.Order);
        }
Exemple #14
0
        public void TestTripleBond()
        {
            var container = SMARTSParser.Parse("C#C", ChemObjectBuilder.Instance);

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            IBond bond = container.Bonds[0];

            Assert.IsTrue(bond is OrderQueryBond);
            OrderQueryBond qBond = (OrderQueryBond)bond;

            Assert.AreEqual(BondOrder.Triple, qBond.Order);
        }
Exemple #15
0
        public void TestSingleBond()
        {
            var container = SMARTSParser.Parse("C-C");

            Assert.AreEqual(2, container.Atoms.Count);
            Assert.AreEqual(1, container.Bonds.Count);
            IBond bond = container.Bonds[0];

            Assert.IsTrue(bond is OrderQueryBond);
            OrderQueryBond qBond = (OrderQueryBond)bond;

            Assert.AreEqual(BondOrder.Single, qBond.Order);
        }
        void Main()
        {
            UniversalIsomorphismTester universalIsomorphismTester = null;

            #region 1
            SmilesParser       sp            = new SmilesParser();
            IAtomContainer     atomContainer = sp.ParseSmiles("CC(=O)OC(=O)C");
            QueryAtomContainer query         = SMARTSParser.Parse("C*C");
            bool queryMatch = universalIsomorphismTester.IsSubgraph(atomContainer, query);
            #endregion
            #region 2
            SMARTSParser parser = new SMARTSParser(new StringReader("C*C"));
            ASTStart     start  = parser.Start();
            #endregion
        }
 static IAtomContainer Sma(string smarts)
 {
     return(SMARTSParser.Parse(smarts, CDK.Builder));
 }