Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(541)

Side by Side Diff: third_party/re2/re2/testing/exhaustive_tester.cc

Issue 1516543002: Update re2 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nits Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2008 The RE2 Authors. All Rights Reserved. 1 // Copyright 2008 The RE2 Authors. All Rights Reserved.
2 // Use of this source code is governed by a BSD-style 2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file. 3 // license that can be found in the LICENSE file.
4 4
5 // Exhaustive testing of regular expression matching. 5 // Exhaustive testing of regular expression matching.
6 6
7 // Each test picks an alphabet (e.g., "abc"), a maximum string length, 7 // Each test picks an alphabet (e.g., "abc"), a maximum string length,
8 // a maximum regular expression length, and a maximum number of letters 8 // a maximum regular expression length, and a maximum number of letters
9 // that can appear in the regular expression. Given these parameters, 9 // that can appear in the regular expression. Given these parameters,
10 // it tries every possible regular expression and string, verifying that 10 // it tries every possible regular expression and string, verifying that
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 } 141 }
142 } 142 }
143 143
144 // Runs an exhaustive test on the given parameters. 144 // Runs an exhaustive test on the given parameters.
145 void ExhaustiveTest(int maxatoms, int maxops, 145 void ExhaustiveTest(int maxatoms, int maxops,
146 const vector<string>& alphabet, 146 const vector<string>& alphabet,
147 const vector<string>& ops, 147 const vector<string>& ops,
148 int maxstrlen, const vector<string>& stralphabet, 148 int maxstrlen, const vector<string>& stralphabet,
149 const string& wrapper, 149 const string& wrapper,
150 const string& topwrapper) { 150 const string& topwrapper) {
151 if (DEBUG_MODE && FLAGS_quick_debug_mode) { 151 if (RE2_DEBUG_MODE && FLAGS_quick_debug_mode) {
152 if (maxatoms > 1) 152 if (maxatoms > 1)
153 maxatoms--; 153 maxatoms--;
154 if (maxops > 1) 154 if (maxops > 1)
155 maxops--; 155 maxops--;
156 if (maxstrlen > 1) 156 if (maxstrlen > 1)
157 maxstrlen--; 157 maxstrlen--;
158 } 158 }
159 ExhaustiveTester t(maxatoms, maxops, alphabet, ops, 159 ExhaustiveTester t(maxatoms, maxops, alphabet, ops,
160 maxstrlen, stralphabet, wrapper, 160 maxstrlen, stralphabet, wrapper,
161 topwrapper); 161 topwrapper);
(...skipping 17 matching lines...) Expand all
179 Split("", alphabet), 179 Split("", alphabet),
180 RegexpGenerator::EgrepOps(), 180 RegexpGenerator::EgrepOps(),
181 maxstrlen, 181 maxstrlen,
182 Split("", stralphabet), 182 Split("", stralphabet),
183 wrapper, 183 wrapper,
184 tops[i]); 184 tops[i]);
185 } 185 }
186 } 186 }
187 187
188 } // namespace re2 188 } // namespace re2
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698