diff options
Diffstat (limited to 't/re')
-rw-r--r-- | t/re/pat.t | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/t/re/pat.t b/t/re/pat.t index e7e019f7ce..7292e4625a 100644 --- a/t/re/pat.t +++ b/t/re/pat.t @@ -27,7 +27,7 @@ skip_all_without_unicode_tables(); my $has_locales = locales_enabled('LC_CTYPE'); -plan tests => 1022; # Update this when adding/deleting tests. +plan tests => 1046; # Update this when adding/deleting tests. run_tests() unless caller; @@ -670,7 +670,47 @@ sub run_tests { @_ = /(bbb)/g; is("@_", "", $message); } - + { + my $message = 'ACCEPT and CLOSE - '; + $_ = "aced"; + #12 3 4 5 + /((a?(*ACCEPT)())())()/ + or die "Failed to match"; + is($1,"a",$message . "buffer 1 is defined with expected value"); + is($2,"a",$message . "buffer 2 is defined with expected value"); + ok(!defined($3),$message . "buffer 3 is not defined"); + ok(!defined($4),$message . "buffer 4 is not defined"); + ok(!defined($5),$message . "buffer 5 is not defined"); + ok(!defined($6),$message . "buffer 6 is not defined"); + $message= 'NO ACCEPT and CLOSE - '; + /((a?())())()/ + or die "Failed to match"; + is($1,"a",$message . "buffer 1 is defined with expected value"); + is($2,"a",$message . "buffer 2 is defined with expected value"); + is($3,"", $message . "buffer 3 is defined with expected value"); + is($4,"", $message . "buffer 4 is defined with expected value"); + is($5,"",$message . "buffer 5 is defined with expected value"); + ok(!defined($6),$message . "buffer 6 is not defined"); + #12 3 4 5 + $message = 'ACCEPT and CLOSE - '; + /((a?(*ACCEPT)(c))(e))(d)/ + or die "Failed to match"; + is($1,"a",$message . "buffer 1 is defined with expected value"); + is($2,"a",$message . "buffer 2 is defined with expected value"); + ok(!defined($3),$message . "buffer 3 is not defined"); + ok(!defined($4),$message . "buffer 4 is not defined"); + ok(!defined($5),$message . "buffer 5 is not defined"); + ok(!defined($6),$message . "buffer 6 is not defined"); + $message= 'NO ACCEPT and CLOSE - '; + /((a?(c))(e))(d)/ + or die "Failed to match"; + is($1,"ace", $message . "buffer 1 is defined with expected value"); + is($2,"ac", $message . "buffer 2 is defined with expected value"); + is($3,"c", $message . "buffer 3 is defined with expected value"); + is($4,"e", $message . "buffer 4 is defined with expected value"); + is($5,"d", $message . "buffer 5 is defined with expected value"); + ok(!defined($6),$message . "buffer 6 is not defined"); + } { my $message = '@- and @+ and @{^CAPTURE} tests'; |