Пример #1
0
 def testLinear(self):
     """Identify linear molecules"""
     # http://cactus.nci.nih.gov/chemical/structure/C1CCCC1C/image
     test_set = [('CC', False),
                 ('CCC', False),
                 ('CC(C)(C)C', False),
                 ('C',False),
                 ('[H]',False),
                 ('O=O',True),
                 #('O=S',True),
                 ('O=C=O',True),
                 ('C#C', True),
                 ('C#CC#CC#C', True)
                 ]
     fail_message = ''
     for smile,should_be in test_set:
         molecule = Molecule(SMILES=smile)
         symmetryNumber = molecule.isLinear()
         if symmetryNumber!=should_be:
             fail_message+="Got linearity %s for %s (expected %s)\n"%(symmetryNumber,smile,should_be)
     self.assertEqual(fail_message,'',fail_message)