Run benchmarks only when --run_benchmark is specified.
author <shinichiro.hamaji@gmail.com> <>
Tue, 7 Jul 2009 03:10:39 +0000 (03:10 +0000)
committer <shinichiro.hamaji@gmail.com> <>
Tue, 7 Jul 2009 03:10:39 +0000 (03:10 +0000)
git-svn-id: https://google-glog.googlecode.com/svn/trunk@52 eb4d4688-79bd-11dd-afb4-1d65580434c0

src/googletest.h
src/logging_unittest.cc

index abc825b..183c56b 100644 (file)
@@ -92,6 +92,7 @@ static const char TEST_SRC_DIR[] = ".";
 DEFINE_string(test_tmpdir, GetTempDir(), "Dir we use for temp files");
 DEFINE_string(test_srcdir, TEST_SRC_DIR,
               "Source-dir root, needed to find glog_unittest_flagfile");
+DEFINE_bool(run_benchmark, false, "If true, run benchmarks");
 #ifdef NDEBUG
 DEFINE_int32(benchmark_iters, 100000000, "Number of iterations per benchmark");
 #else
@@ -241,6 +242,10 @@ class BenchmarkRegisterer {
 };
 
 static void RunSpecifiedBenchmarks() {
+  if (!FLAGS_run_benchmark) {
+    return;
+  }
+
   int iter_cnt = FLAGS_benchmark_iters;
   puts("Benchmark\tTime(ns)\tIterations");
   for (map<string, void (*)(int)>::const_iterator iter = g_benchlist.begin();
index c915bb8..0e25478 100644 (file)
 
 DECLARE_string(log_backtrace_at);  // logging.cc
 
+#ifdef HAVE_LIB_GFLAGS
+#include <gflags/gflags.h>
+#endif
+
 #ifdef HAVE_LIB_GMOCK
 #include <gmock/gmock.h>
 #include "mock-log.h"
@@ -168,6 +172,10 @@ static void BM_vlog(int n) {
 BENCHMARK(BM_vlog);
 
 int main(int argc, char **argv) {
+#ifdef HAVE_LIB_GFLAGS
+  ParseCommandLineFlags(&argc, &argv, true);
+#endif
+
   // Test some basics before InitGoogleLogging:
   CaptureTestStderr();
   LogWithLevels(FLAGS_v, FLAGS_stderrthreshold,