diff options
author | schwarze <> | 2016-05-26 13:38:22 +0000 |
---|---|---|
committer | schwarze <> | 2016-05-26 13:38:22 +0000 |
commit | 6a88a0b887ec421130cfb5bc6e31ca47c4ee5703 (patch) | |
tree | db98b1f2e9bee47c602e7dd7785406cb3f18fc32 /src | |
parent | d8989a72d4db82b1aec4821e7839cf23c17be8f7 (diff) | |
download | openbsd-6a88a0b887ec421130cfb5bc6e31ca47c4ee5703.tar.gz openbsd-6a88a0b887ec421130cfb5bc6e31ca47c4ee5703.tar.bz2 openbsd-6a88a0b887ec421130cfb5bc6e31ca47c4ee5703.zip |
systematically test all combinations of REG_STARTEND, REG_NEWLINE,
and REG_NOTBOL with line and word anchors
Diffstat (limited to 'src')
-rw-r--r-- | src/regress/lib/libc/regex/tests | 94 |
1 files changed, 85 insertions, 9 deletions
diff --git a/src/regress/lib/libc/regex/tests b/src/regress/lib/libc/regex/tests index 449f624401..ab3d10aefe 100644 --- a/src/regress/lib/libc/regex/tests +++ b/src/regress/lib/libc/regex/tests | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: tests,v 1.6 2014/09/21 05:06:23 doug Exp $ | 1 | # $OpenBSD: tests,v 1.7 2016/05/26 13:38:22 schwarze Exp $ |
2 | # $NetBSD: tests,v 1.5 1995/04/20 22:40:00 cgd Exp $ | 2 | # $NetBSD: tests,v 1.5 1995/04/20 22:40:00 cgd Exp $ |
3 | 3 | ||
4 | # regular expression test set | 4 | # regular expression test set |
@@ -63,6 +63,7 @@ a\(\)b b ab ab | |||
63 | 63 | ||
64 | # anchoring and REG_NEWLINE | 64 | # anchoring and REG_NEWLINE |
65 | ^abc$ & abc abc | 65 | ^abc$ & abc abc |
66 | ^b & abc | ||
66 | a^b - a^b | 67 | a^b - a^b |
67 | a^b b a^b a^b | 68 | a^b b a^b a^b |
68 | a$b - a$b | 69 | a$b - a$b |
@@ -77,7 +78,10 @@ $^ - "" @ | |||
77 | $$ - "" @ | 78 | $$ - "" @ |
78 | b$ & abNc | 79 | b$ & abNc |
79 | b$ &n abNc b | 80 | b$ &n abNc b |
80 | ^b$ & aNbNc | 81 | ^b & aNbNc |
82 | b$ & aNbNc | ||
83 | ^a &n aNb a | ||
84 | ^b &n abc | ||
81 | ^b$ &n aNbNc b | 85 | ^b$ &n aNbNc b |
82 | ^$ &n aNNb @Nb | 86 | ^$ &n aNNb @Nb |
83 | ^$ n abc | 87 | ^$ n abc |
@@ -86,12 +90,15 @@ $^ n aNNb @Nb | |||
86 | \($\)\(^\) bn aNNb @Nb | 90 | \($\)\(^\) bn aNNb @Nb |
87 | ^^ n^ aNNb @Nb | 91 | ^^ n^ aNNb @Nb |
88 | $$ n aNNb @NN | 92 | $$ n aNNb @NN |
89 | ^a ^ a | 93 | ^a &^ a |
90 | a$ $ a | 94 | a$ &$ a |
91 | ^a ^n aNb | 95 | ^b &^ abc |
92 | ^b ^n aNb b | 96 | ^b &^ aNb |
93 | a$ $n bNa | 97 | ^a &^n aNb |
94 | b$ $n bNa b | 98 | ^b &^n abc |
99 | ^b &^n aNb b | ||
100 | a$ &$n bNa | ||
101 | b$ &$n bNa b | ||
95 | a*(^b$)c* - b b | 102 | a*(^b$)c* - b b |
96 | a*\(^b$\)c* b b b | 103 | a*\(^b$\)c* b b b |
97 | 104 | ||
@@ -452,7 +459,18 @@ a(b+|((c)*))+d - abd abd @d,@d,- | |||
452 | a(b+|((c)*))+d - abcd abcd @d,@d,- | 459 | a(b+|((c)*))+d - abcd abcd @d,@d,- |
453 | 460 | ||
454 | # check out the STARTEND option | 461 | # check out the STARTEND option |
455 | [abc] &# a(b)c b | 462 | ^[abc] &# a(b)c b |
463 | ^[abc] &# a(xb)c | ||
464 | ^[abc] &# aN(b)c b | ||
465 | ^[abc] &n# a(b)c b | ||
466 | ^[abc] &n# a(xb)c | ||
467 | ^[abc] &n# aN(b)c b | ||
468 | ^[abc] &^# a(b)c | ||
469 | ^[abc] &^# a(xb)c | ||
470 | ^[abc] &^# aN(b)c | ||
471 | ^[abc] &n^# a(b)c | ||
472 | ^[abc] &n^# a(xb)c | ||
473 | ^[abc] &n^# aN(b)c b | ||
456 | [abc] &# a(d)c | 474 | [abc] &# a(d)c |
457 | [abc] &# a(bc)d b | 475 | [abc] &# a(bc)d b |
458 | [abc] &# a(dc)d c | 476 | [abc] &# a(dc)d c |
@@ -484,6 +502,64 @@ a.* &# (aZb)c aZb | |||
484 | \<a & ba | 502 | \<a & ba |
485 | [[:<:]]a & -a a | 503 | [[:<:]]a & -a a |
486 | \<a & -a a | 504 | \<a & -a a |
505 | [[:<:]]a & Na a | ||
506 | \<a & Na a | ||
507 | [[:<:]]a &n a a | ||
508 | \<a &n a a | ||
509 | [[:<:]]a &n ba | ||
510 | \<a &n ba | ||
511 | [[:<:]]a &n -a a | ||
512 | \<a &n -a a | ||
513 | [[:<:]]a &n Na a | ||
514 | \<a &n Na a | ||
515 | [[:<:]]a &^ a | ||
516 | \<a &^ a | ||
517 | [[:<:]]a &^ ba | ||
518 | \<a &^ ba | ||
519 | [[:<:]]a &^ -a a | ||
520 | \<a &^ -a a | ||
521 | [[:<:]]a &^ Na a | ||
522 | \<a &^ Na a | ||
523 | [[:<:]]a &n^ a | ||
524 | \<a &n^ a | ||
525 | [[:<:]]a &n^ ba | ||
526 | \<a &n^ ba | ||
527 | [[:<:]]a &n^ -a a | ||
528 | \<a &n^ -a a | ||
529 | [[:<:]]a &n^ Na a | ||
530 | \<a &n^ Na a | ||
531 | [[:<:]]b &# a(b)c b | ||
532 | \<b &# a(b)c b | ||
533 | [[:<:]]b &# a(xb)c | ||
534 | \<b &# a(xb)c | ||
535 | [[:<:]]b &# -(b)c b | ||
536 | \<b &# -(b)c b | ||
537 | [[:<:]]b &# aN(b)c b | ||
538 | \<b &# aN(b)c b | ||
539 | [[:<:]]b &n# a(b)c b | ||
540 | \<b &n# a(b)c b | ||
541 | [[:<:]]b &n# a(xb)c | ||
542 | \<b &n# a(xb)c | ||
543 | [[:<:]]b &n# -(b)c b | ||
544 | \<b &n# -(b)c b | ||
545 | [[:<:]]b &n# aN(b)c b | ||
546 | \<b &n# aN(b)c b | ||
547 | [[:<:]]b &^# a(b)c | ||
548 | \<b &^# a(b)c | ||
549 | [[:<:]]b &^# a(xb)c | ||
550 | \<b &^# a(xb)c | ||
551 | [[:<:]]b &^# -(b)c b | ||
552 | \<b &^# -(b)c b | ||
553 | [[:<:]]b &^# aN(b)c b | ||
554 | \<b &^# aN(b)c b | ||
555 | [[:<:]]b &n^# a(b)c | ||
556 | \<b &n^# a(b)c | ||
557 | [[:<:]]b &n^# a(xb)c | ||
558 | \<b &n^# a(xb)c | ||
559 | [[:<:]]b &n^# -(b)c b | ||
560 | \<b &n^# -(b)c b | ||
561 | [[:<:]]b &n^# aN(b)c b | ||
562 | \<b &n^# aN(b)c b | ||
487 | a[[:>:]] & a a | 563 | a[[:>:]] & a a |
488 | a\> & a a | 564 | a\> & a a |
489 | a[[:>:]] & ab | 565 | a[[:>:]] & ab |