run-test: enable checker in dev mode

Also, use explicit flush (instead of passing flush parameter to print)
to enable better compatibility across python versions.

Change-Id: Iaf294d88e932b778d5dce7f3c2b8eca775849973
diff --git a/test/run-test b/test/run-test
index 8ef3e3e..8c47663 100755
--- a/test/run-test
+++ b/test/run-test
@@ -543,10 +543,20 @@
         echo "${test_dir}: running..." 1>&2
         "./${run}" $run_args "$@" 2>&1
         run_exit="$?"
-        echo "run exit status: $run_exit" 1>&2
+
         if [ "$run_exit" = "0" ]; then
-            good="yes"
+            if [ "$run_checker" = "yes" ]; then
+                "$checker" "$cfg_output" "$tmp_dir" 2>&1
+                checker_exit="$?"
+                if [ "$checker_exit" = "0" ]; then
+                    good="yes"
+                fi
+                echo "checker exit status: $checker_exit" 1>&2
+            else
+                good="yes"
+            fi
         fi
+        echo "run exit status: $run_exit" 1>&2
     fi
 elif [ "$update_mode" = "yes" ]; then
     "./${build}" $build_args >"$build_output" 2>&1
diff --git a/tools/checker.py b/tools/checker.py
index 55f015e..5744c15 100755
--- a/tools/checker.py
+++ b/tools/checker.py
@@ -110,9 +110,10 @@
       text = Logger.Color.terminalCode(color, out) + text + \
              Logger.Color.terminalCode(Logger.Color.Default, out)
       if newLine:
-        print(text, flush=True, file=out)
+        print(text, file=out)
       else:
-        print(text, end="", flush=True, file=out)
+        print(text, end="", file=out)
+      out.flush()
 
   @staticmethod
   def fail(msg, file=None, line=-1):