diff --git a/test/scripts/diatest.py b/test/scripts/diatest.py new file mode 100644 index 0000000..0af6261 --- /dev/null +++ b/test/scripts/diatest.py @@ -0,0 +1,23 @@ +""" +Tests for pyDia +""" + +import unittest +import target +import pykd + +class DiaTest( unittest.TestCase ): + def testFind(self): + globalScope = pykd.diaOpenPdb( str(target.module.pdb()) ) + + self.assertNotEqual(0, len(globalScope)) + + symFunction = globalScope.find("FuncWithName0") + self.assertTrue(1 == len( symFunction )) + + symFunction = globalScope.findEx(pykd.SymTagNull, + "FuNc*Name?", + pykd.nsCaseInRegularExpression) + self.assertTrue(len(symFunction) > 1) + + diff --git a/test/scripts/pykdtest.py b/test/scripts/pykdtest.py index a618fc1..a33e17b 100644 --- a/test/scripts/pykdtest.py +++ b/test/scripts/pykdtest.py @@ -15,12 +15,14 @@ import basetest import typeinfo import regtest import moduletest +import diatest def getTestSuite( singleName = "" ): if singleName == "": return unittest.TestSuite( [ unittest.TestLoader().loadTestsFromTestCase( basetest.BaseTest ), unittest.TestLoader().loadTestsFromTestCase( moduletest.ModuleTest ), + unittest.TestLoader().loadTestsFromTestCase( diatest.DiaTest ), # unittest.TestLoader().loadTestsFromTestCase( typeinfo.TypeInfoTest ), # unittest.TestLoader().loadTestsFromTestCase( regtest.CpuRegTest ) ] ) diff --git a/test/targetapp/targetapp.cpp b/test/targetapp/targetapp.cpp index 0f04e09..e5e92d4 100644 --- a/test/targetapp/targetapp.cpp +++ b/test/targetapp/targetapp.cpp @@ -6,12 +6,22 @@ #include "utils.h" +void FuncWithName0() +{ +} + +void FuncWithName1() +{ +} + int _tmain(int argc, _TCHAR* argv[]) { try { // Let test scripts to execute __debugbreak(); + FuncWithName0(); + FuncWithName1(); } catch(std::exception & ex) { diff --git a/test/targetapp/targetapp.vcproj b/test/targetapp/targetapp.vcproj index ecb52b4..ce54717 100644 --- a/test/targetapp/targetapp.vcproj +++ b/test/targetapp/targetapp.vcproj @@ -404,6 +404,10 @@ RelativePath="..\scripts\basetest.py" > + +