mirror of
https://github.com/openbabel/openbabel.git
synced 2025-02-25 18:55:23 -06:00
38 lines
1.4 KiB
Python
38 lines
1.4 KiB
Python
import pyopenbabel as pob
|
|
import openbabel as ob
|
|
|
|
def testwrapper():
|
|
"""Test how well the wrapper is wrapped."""
|
|
|
|
print "\n******* How well does pyopenbabel wrap openbabel? *********\n\n"
|
|
|
|
print "*** Atom methods ***\n"
|
|
|
|
getmethods = set([x for x in ob.OBAtom.__dict__.keys() if x.startswith("Get")])
|
|
wrapped = set(pob.Atom._getmethods.values())
|
|
|
|
print "(1) 'Get methods' wrapped by SWIG and included in pyopenbabel:",sorted(getmethods & wrapped)
|
|
print "\n(2) 'Get methods' wrapped by SWIG but not in pyopenbabel:",sorted(getmethods-wrapped)
|
|
print "\n(3) Mistakes: 'Get methods' in pyopenbabel but not in SWIG:",sorted(wrapped-getmethods)
|
|
|
|
|
|
print "\n\n*** Molecule methods ***\n"
|
|
|
|
getmethods = set([x for x in ob.OBMol.__dict__.keys() if x.startswith("Get")])
|
|
wrapped = set(pob.Molecule._getmethods.values())
|
|
|
|
print "(1) 'Get methods' wrapped by SWIG and included in pyopenbabel:",sorted(getmethods & wrapped)
|
|
print "\n(2) 'Get methods' wrapped by SWIG but not in pyopenbabel:",sorted(getmethods-wrapped)
|
|
print "\n(3) Mistakes: 'Get methods' in pyopenbabel but not in SWIG:",sorted(wrapped-getmethods)
|
|
|
|
def testsd(sdfile):
|
|
"""Read in an sdfile."""
|
|
sd = open(sdfile,"r").read()
|
|
mol = pob.readstring("sd",sd)
|
|
for x,y in mol.__dict__.iteritems():
|
|
print x,y
|
|
|
|
if __name__=="__main__":
|
|
# testwrapper()
|
|
testsd("3d.head.sdf")
|