re2: even more logging

R=r
CC=re2-dev
http://codereview.appspot.com/4994042
diff --git a/Makefile b/Makefile
index f4b2112..a545827 100644
--- a/Makefile
+++ b/Makefile
@@ -283,12 +283,17 @@
 	obj/dbg/libre2.a obj/so/libre2.a \
 	obj/test/% obj/so/test/% obj/dbg/test/%
 
-exhaustive-log:
+log:
 	make clean
 	make CXXFLAGS="$(CXXFLAGS) -DLOGGING=1" obj/test/exhaustive{,1,2,3}_test
-	echo '#' RE2 exhaustive tests built by make $@ >$@
-	echo '#' $$(date) >>$@
-	obj/test/exhaustive_test |grep -v '^PASS$$' >>$@
-	obj/test/exhaustive1_test |grep -v '^PASS$$' >>$@
-	obj/test/exhaustive2_test |grep -v '^PASS$$' >>$@
-	obj/test/exhaustive3_test |grep -v '^PASS$$' >>$@
+	echo '#' RE2 exhaustive tests built by make log >re2-exhaustive.txt
+	echo '#' $$(date) >>re2-exhaustive.txt
+	obj/test/exhaustive_test |grep -v '^PASS$$' >>re2-exhaustive.txt
+	obj/test/exhaustive1_test |grep -v '^PASS$$' >>re2-exhaustive.txt
+	obj/test/exhaustive2_test |grep -v '^PASS$$' >>re2-exhaustive.txt
+	obj/test/exhaustive3_test |grep -v '^PASS$$' >>re2-exhaustive.txt
+
+	make CXXFLAGS="$(CXXFLAGS) -DLOGGING=1" obj/test/search_test
+	echo '#' RE2 basic search tests built by make $@ >re2-search.txt
+	echo '#' $$(date) >>re2-search.txt
+	obj/test/search_test |grep -v '^PASS$$' >>re2-search.txt
diff --git a/re2/testing/search_test.cc b/re2/testing/search_test.cc
index 83c7c57..3ab2ae3 100644
--- a/re2/testing/search_test.cc
+++ b/re2/testing/search_test.cc
@@ -8,6 +8,7 @@
 #include "re2/prog.h"
 #include "re2/regexp.h"
 #include "re2/testing/tester.h"
+#include "re2/testing/exhaustive_tester.h"
 
 namespace re2 {
 
@@ -307,6 +308,16 @@
     const RegexpTest& t = simple_tests[i];
     if (!TestRegexpOnText(t.regexp, t.text))
       failures++;
+
+#ifdef LOGGING
+    // Build a dummy ExhaustiveTest call that will trigger just
+    // this one test, so that we log the test case.
+    vector<string> atom, alpha, ops;
+    atom.push_back(StringPiece(t.regexp).as_string());
+    alpha.push_back(StringPiece(t.text).as_string());
+    ExhaustiveTest(1, 0, atom, ops, 1, alpha, "", "");
+#endif
+
   }
   EXPECT_EQ(failures, 0);
 }