pykd/test/scripts/pykdtest.py

38 lines
1.2 KiB
Python

import sys
import os
import unittest
# Append current pykd.pyd path to PYTHONPATH
sys.path.append(os.path.dirname(sys.argv[1]))
import pykd
class TestPykd(unittest.TestCase):
def setUp(self):
self.targetAppPath = sys.argv[1]
self.targetModuleName = os.path.splitext(os.path.basename(self.targetAppPath))[0]
self.targetModule = None
self.gVerInfoOffset = 0L
self.verInfo = None
def testPykd(self):
print self.targetAppPath
self.assertTrue(pykd.startProcess(self.targetAppPath))
self.targetModule = pykd.loadModule(self.targetModuleName)
self.assertNotEqual(self.targetModule, None)
pykd.go()
self.gVerInfoOffset = pykd.getOffset(self.targetModuleName, "gVerInfo")
self.assertNotEqual(self.gVerInfoOffset, 0L)
self.verInfo = pykd.typedVar(self.targetModuleName, "_OSVERSIONINFOA", self.gVerInfoOffset)
self.assertNotEqual(self.verInfo, None)
pykd.go()
if __name__ == '__main__':
#unittest.main(argv=[])
suite = unittest.TestLoader().loadTestsFromTestCase(TestPykd)
unittest.TextTestRunner().run(suite)