Home | History | Annotate | Download | only in intltest

Lines Matching refs:REGEX_TESTLM

106 //    REGEX_TESTLM       Macro + invocation function to simplify writing quick tests
110 // REGEX_TESTLM("pattern", "input text", lookingAt expected, matches expected);
118 #define REGEX_TESTLM(pat, text, looking, match) doRegexLMTest(pat, text, looking, match, __LINE__);
239 // REGEX_TESTLM("a\N{LATIN SMALL LETTER B}c", "abc", FALSE, FALSE);
253 REGEX_TESTLM("st(abc)ring", "stabcring thing", TRUE, FALSE);
254 REGEX_TESTLM("st(abc)ring", "stabcring", TRUE, TRUE);
255 REGEX_TESTLM("st(abc)ring", "stabcrung", FALSE, FALSE);
260 REGEX_TESTLM("st(abc)*ring", "string", TRUE, TRUE);
261 REGEX_TESTLM("st(abc)*ring", "stabcring", TRUE, TRUE);
262 REGEX_TESTLM("st(abc)*ring", "stabcabcring", TRUE, TRUE);
263 REGEX_TESTLM("st(abc)*ring", "stabcabcdring", FALSE, FALSE);
264 REGEX_TESTLM("st(abc)*ring", "stabcabcabcring etc.", TRUE, FALSE);
266 REGEX_TESTLM("a*", "", TRUE, TRUE);
267 REGEX_TESTLM("a*", "b", TRUE, FALSE);
273 REGEX_TESTLM(".", "abc", TRUE, FALSE);
274 REGEX_TESTLM("...", "abc", TRUE, TRUE);
275 REGEX_TESTLM("....", "abc", FALSE, FALSE);
276 REGEX_TESTLM(".*", "abcxyz123", TRUE, TRUE);
277 REGEX_TESTLM("ab.*xyz", "abcdefghij", FALSE, FALSE);
278 REGEX_TESTLM("ab.*xyz", "abcdefg...wxyz", TRUE, TRUE);
279 REGEX_TESTLM("ab.*xyz", "abcde...wxyz...abc..xyz", TRUE, TRUE);
280 REGEX_TESTLM("ab.*xyz", "abcde...wxyz...abc..xyz...", TRUE, FALSE);
285 REGEX_TESTLM("abc*", "ab", TRUE, TRUE);
286 REGEX_TESTLM("abc*", "abccccc", TRUE, TRUE);
291 REGEX_TESTLM(".", "\\U00011000", TRUE, TRUE);
292 REGEX_TESTLM("...", "\\U00011000x\\U00012002", TRUE, TRUE);
293 REGEX_TESTLM("...", "\\U00011000x\\U00012002y", TRUE, FALSE);
299 REGEX_TESTLM("[1-6]", "1", TRUE, TRUE);
300 REGEX_TESTLM("[1-6]", "3", TRUE, TRUE);
301 REGEX_TESTLM("[1-6]", "7", FALSE, FALSE);
302 REGEX_TESTLM("a[1-6]", "a3", TRUE, TRUE);
303 REGEX_TESTLM("a[1-6]", "a3", TRUE, TRUE);
304 REGEX_TESTLM("a[1-6]b", "a3b", TRUE, TRUE);
306 REGEX_TESTLM("a[0-9]*b", "a123b", TRUE, TRUE);
307 REGEX_TESTLM("a[0-9]*b", "abc", TRUE, FALSE);
308 REGEX_TESTLM("[\\p{Nd}]*", "123456", TRUE, TRUE);
309 REGEX_TESTLM("[\\p{Nd}]*", "a123456", TRUE, FALSE); // note that * matches 0 occurences.
310 REGEX_TESTLM("[a][b][[:Zs:]]*", "ab ", TRUE, TRUE);
315 REGEX_TESTLM("(a|b)", "a", TRUE, TRUE);
316 REGEX_TESTLM("(a|b)", "b", TRUE, TRUE);
317 REGEX_TESTLM("(a|b)", "c", FALSE, FALSE);
318 REGEX_TESTLM("a|b", "b", TRUE, TRUE);
320 REGEX_TESTLM("(a|b|c)*", "aabcaaccbcabc", TRUE, TRUE);
321 REGEX_TESTLM("(a|b|c)*", "aabcaaccbcabdc", TRUE, FALSE);
322 REGEX_TESTLM("(a(b|c|d)(x|y|z)*|123)", "ac", TRUE, TRUE);
323 REGEX_TESTLM("(a(b|c|d)(x|y|z)*|123)", "123", TRUE, TRUE);
324 REGEX_TESTLM("(a|(1|2)*)(b|c|d)(x|y|z)*|123", "123", TRUE, TRUE);
325 REGEX_TESTLM("(a|(1|2)*)(b|c|d)(x|y|z)*|123", "222211111czzzzw", TRUE, FALSE);
330 REGEX_TESTLM("ab+", "abbc", TRUE, FALSE);
331 REGEX_TESTLM("ab+c", "ac", FALSE, FALSE);
332 REGEX_TESTLM("b+", "", FALSE, FALSE);
333 REGEX_TESTLM("(abc|def)+", "defabc", TRUE, TRUE);
334 REGEX_TESTLM(".+y", "zippity dooy dah ", TRUE, FALSE);
335 REGEX_TESTLM(".+y", "zippity dooy", TRUE, TRUE);
340 REGEX_TESTLM("ab?", "ab", TRUE, TRUE);
341 REGEX_TESTLM("ab?", "a", TRUE, TRUE);
342 REGEX_TESTLM("ab?", "ac", TRUE, FALSE);
343 REGEX_TESTLM("ab?", "abb", TRUE, FALSE);
344 REGEX_TESTLM("a(b|c)?d", "abd", TRUE, TRUE);
345 REGEX_TESTLM("a(b|c)?d", "acd", TRUE, TRUE);
346 REGEX_TESTLM("a(b|c)?d", "ad", TRUE, TRUE);
347 REGEX_TESTLM("a(b|c)?d", "abcd", FALSE, FALSE);
348 REGEX_TESTLM("a(b|c)?d", "ab", FALSE, FALSE);
355 // REGEX_TESTLM("\101\142", "Ab", TRUE, TRUE); // Octal TODO: not implemented yet.
356 REGEX_TESTLM("\\a", "\\u0007", TRUE, TRUE); // BEL
357 REGEX_TESTLM("\\cL", "\\u000c", TRUE, TRUE); // Control-L
358 REGEX_TESTLM("\\e", "\\u001b", TRUE, TRUE); // Escape
359 REGEX_TESTLM("\\f", "\\u000c", TRUE, TRUE); // Form Feed
360 REGEX_TESTLM("\\n", "\\u000a", TRUE, TRUE); // new line
361 REGEX_TESTLM("\\r", "\\u000d", TRUE, TRUE); // CR
362 REGEX_TESTLM("\\t", "\\u0009", TRUE, TRUE); // Tab
363 REGEX_TESTLM("\\u1234", "\\u1234", TRUE, TRUE);
364 REGEX_TESTLM("\\U00001234", "\\u1234", TRUE, TRUE);
366 REGEX_TESTLM(".*\\Ax", "xyz", TRUE, FALSE); // \A matches only at the beginning of input
367 REGEX_TESTLM(".*\\Ax", " xyz", FALSE, FALSE); // \A matches only at the beginning of input
370 REGEX_TESTLM("\\\\\\|\\(\\)\\[\\{\\~\\$\\*\\+\\?\\.", "\\\\|()[{~$*+?.", TRUE, TRUE);