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"
>
+
+