Added a method in run_command.py to run a host test.
The run can also happen under valgrind.

runtest.py: Search for host test as well. Run these under valgrind.
diff --git a/testrunner/runtest.py b/testrunner/runtest.py
index 6d6c6df..f87d451 100755
--- a/testrunner/runtest.py
+++ b/testrunner/runtest.py
@@ -44,7 +44,7 @@
 
   # file path to android core platform tests, relative to android build root
   # TODO move these test data files to another directory
-  _CORE_TEST_PATH = os.path.join("development", "testrunner", 
+  _CORE_TEST_PATH = os.path.join("development", "testrunner",
                                  _TEST_FILE_NAME)
 
   # vendor glob file path patterns to tests, relative to android
@@ -60,7 +60,7 @@
   def __init__(self):
     # disable logging of timestamp
     self._root_path = android_build.GetTop()
-    logger.SetTimestampLogging(False)  
+    logger.SetTimestampLogging(False)
 
   def _ProcessOptions(self):
     """Processes command-line options."""
@@ -290,12 +290,27 @@
     # find all test files, convert unicode names to ascii, take the basename
     # and drop the .cc/.cpp  extension.
     file_pattern = os.path.join(test_suite.GetBuildPath(), "test_*")
+    logger.SilentLog("Scanning %s" % test_suite.GetBuildPath())
     file_list = []
     for f in map(str, glob.glob(file_pattern)):
       f = os.path.basename(f)
       f = re.split(".[cp]+$", f)[0]
+      logger.SilentLog("Found %s" % f)
       file_list.append(f)
 
+    # Run on the host
+    logger.Log("\nRunning on host")
+    for f in file_list:
+      if run_command.RunHostCommand(f) != 0:
+        logger.Log("%s... failed" % f)
+      else:
+        if run_command.RunHostCommand(f, valgrind=True) == 0:
+          logger.Log("%s... ok\t\t[valgrind: ok]" % f)
+        else:
+          logger.Log("%s... ok\t\t[valgrind: failed]" % f)
+
+    # Run on the device
+    logger.Log("\nRunning on target")
     for f in file_list:
       full_path = "/system/bin/%s" % f