diff options
Diffstat (limited to 'tests/regcount.test')
-rw-r--r-- | tests/regcount.test | 116 |
1 files changed, 91 insertions, 25 deletions
diff --git a/tests/regcount.test b/tests/regcount.test index 731bfc7..e359389 100644 --- a/tests/regcount.test +++ b/tests/regcount.test @@ -8,32 +8,98 @@ needs constraint regexp_are set n 0 foreach {pat str exp} { - a+ bac 1 - a{1,} bac 1 - a* bac 1 - a{0,} bac 1 - aa+ bac 0 - a{2,} bac 0 - a{2,} bacaad 1 - a{3,} bacaad 0 - a{2,}$ bacaad 0 - a{2,}$ bacaa 1 - a{2,}$ ba 0 - a{2,}$ aa 1 - a{0,0}b$ b 1 - a{1,1}b$ b 0 - a{1,1}b$ cab 1 - a{2,2}b$ cab 0 - a{2,2}b$ cabaabx 0 - a{2,2}b$ cacaab 1 - ca{2,4}b cacaab 1 - ca{2,3}b cacaab 1 - ca{2,3}b cacaaab 1 - c(a|b){2,3}d xcbad 1 - c(a|b){2,3}d xcabbd 1 - c(a|b){2,3}d xcbaaad 0 + a+ bac a + a{1,} bac a + a* bac {{}} + a{0,} bac {{}} + aa+ bac {} + a{2,} bac {} + a{2,} bacaad aa + a{3,} bacaad {} + {a{2,}$} bacaad {} + {a{2,}$} bacaa aa + {a{2,}$} ba {} + {a{2,}$} aa aa + {a{0,0}b$} b b + {a{1,1}b$} b {} + {a{1,1}b$} cab ab + {a{2,2}b$} cab {} + {a{2,2}b$} cabaabx {} + {a{2,2}b$} cacaab aab + ca{2,4}b cacaab caab + ca{2,3}b cacaab caab + ca{2,3}b cacaaab caaab + c(a|b){2,3}d xcbad {cbad a} + c(a|b){2,3}d xcabbd {cabbd b} + c(a|b){2,3}d xcbaaad {} + a{4} baaaad aaaa + a{2,5} baaaad aaaa + a{1,3} baaaad aaa + a{1,2} baaaad aa + a{3,4} baaaad aaaa + a{5,6} baaaad {} + a{4}? baaaad aaaa + a{2,5}? baaaad aa + a{1,3}? baaaad a + a{1,2}? baaaad a + a{3,4}? baaaad aaa + a{5,6}? baaaad {} + {\d{1,3}} 239 239 + (aa|bb)?c xabbaac {aac aa} + (a|y)+ bac {a a} + (a|y){1,} bac {a a} + (a|y)* bac {{} {}} + (a|y){0,} bac {{} {}} + (a|y)a+ bac {} + (a|y){2,} bac {} + (a|y){2,} bacaad {aa a} + (a|y){3,} bacaad {} + {(a|y){2,}$} bacaad {} + {(a|y){2,}$} bacaa {aa a} + {(a|y){2,}$} ba {} + {(a|y){2,}$} aa {aa a} + {(a|y){0,0}b$} b {b {}} + {(a|y){1,1}b$} b {} + {(a|y){1,1}b$} cab {ab a} + {(a|y){2,2}b$} cab {} + {(a|y){2,2}b$} cabaabx {} + {(a|y){2,2}b$} cacaab {aab a} + c(a|y){2,4}b cacaab {caab a} + c(a|y){2,3}b cacaab {caab a} + c(a|y){2,3}b cacaaab {caaab a} + c((a|y)|b){2,3}d xcbad {cbad a a} + ####c((a|y)|b){2,3}d xcabbd {cabbd b {}} + c((a|y)|b){2,3}d xcbaaad {} + (a|y){4} baaaad {aaaa a} + (a|y){2,5} baaaad {aaaa a} + (a|y){1,3} baaaad {aaa a} + (a|y){1,2} baaaad {aa a} + (a|y){3,4} baaaad {aaaa a} + (a|y){5,6} baaaad {} + (a|y){4}? baaaad {aaaa a} + (a|y){2,5}? baaaad {aa a} + (a|y){1,3}? baaaad {a a} + (a|y){1,2}? baaaad {a a} + (a|y){3,4}? baaaad {aaa a} + (a|y){5,6}? baaaad {} + {[[:alpha:]]+} _bcd56_ef bcd + {[[:alnum:]]+} _bcd56_ef bcd56 + {[[:space:]]+} "_bc \t\r\n\f\v_" "{ \t\r\n\f\v}" + {[\x41-\x43]+} "_ABCD_" ABC + {\m.+\M} "#A test#" "{A test}" + {\m.+?\M} "#A test#" "A" + {\m\M} "a" "" + {ab*c} xnbbmbbbc {} + {.^xxx} yyy {} + {\mb} " abc " "" + ((a*)*b)*b aaaaaaaaaaaaaaaaaaaaaaaaab {b {} {}} + ####(a*)* aab {aa {}} } { - test regcount-1.[incr n] "Test: regexp $pat" [list regexp -- $pat $str] $exp + if {[string match #* $pat]} { + continue + } + #puts \t[list $pat $str [regexp -inline -- $pat $str]] + test regcount-1.[incr n] "Test: regexp $pat $str" [list regexp -inline -- $pat $str] $exp } testreport |