mirror of
https://github.com/rdkit/rdkit.git
synced 2026-06-05 22:04:27 +08:00
37 lines
950 B
Python
37 lines
950 B
Python
from __future__ import print_function
|
|
from rdkit import RDConfig
|
|
from rdkit import Chem
|
|
import unittest,os.path
|
|
import sascorer
|
|
print(sascorer.__file__)
|
|
|
|
class TestCase(unittest.TestCase):
|
|
def test1(self):
|
|
with open('data/zim.100.txt') as f:
|
|
testData = [x.strip().split('\t') for x in f]
|
|
testData.pop(0)
|
|
for row in testData:
|
|
smi = row[0]
|
|
m = Chem.MolFromSmiles(smi)
|
|
tgt = float(row[2])
|
|
val = sascorer.calculateScore(m)
|
|
self.assertAlmostEqual(tgt,val,3)
|
|
|
|
if __name__ == '__main__':
|
|
import sys,getopt,re
|
|
doLong=0
|
|
if len(sys.argv) >1:
|
|
args,extras=getopt.getopt(sys.argv[1:],'l')
|
|
for arg,val in args:
|
|
if arg=='-l':
|
|
doLong=1
|
|
sys.argv.remove('-l')
|
|
if doLong:
|
|
for methName in dir(TestCase):
|
|
if re.match('_test',methName):
|
|
newName = re.sub('_test','test',methName)
|
|
exec('TestCase.%s = TestCase.%s'%(newName,methName))
|
|
|
|
unittest.main()
|
|
|