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);
}