X-Git-Url: http://git.maemo.org/git/?p=dh-make-perl;a=blobdiff_plain;f=dev%2Fi386%2Flibperl-critic-perl%2Flibperl-critic-perl-1.088%2Ft%2FRegularExpressions%2FProhibitCaptureWithoutTest.run;fp=dev%2Fi386%2Flibperl-critic-perl%2Flibperl-critic-perl-1.088%2Ft%2FRegularExpressions%2FProhibitCaptureWithoutTest.run;h=402057fcb875e38e58d767618133caf3731311c7;hp=0000000000000000000000000000000000000000;hb=da95c414033799c3a62606f299c3c00b5c77ca11;hpb=2d38e14bacbb15b98e539843a40b3c52a225f493 diff --git a/dev/i386/libperl-critic-perl/libperl-critic-perl-1.088/t/RegularExpressions/ProhibitCaptureWithoutTest.run b/dev/i386/libperl-critic-perl/libperl-critic-perl-1.088/t/RegularExpressions/ProhibitCaptureWithoutTest.run new file mode 100644 index 0000000..402057f --- /dev/null +++ b/dev/i386/libperl-critic-perl/libperl-critic-perl-1.088/t/RegularExpressions/ProhibitCaptureWithoutTest.run @@ -0,0 +1,95 @@ +## name use without regex +## failures 3 +## cut +my $foo = $1; +my @matches = ($1, $2); + +#----------------------------------------------------------------------------- + +## name void use without regex +## failures 1 +## cut +$1 + +#----------------------------------------------------------------------------- + +## name regex but no check on success +## failures 1 +## cut +'some string' =~ m/(s)/; +my $s = $1; + +#----------------------------------------------------------------------------- + +## name inside a checkblock, but another regex overrides +## failures 1 +## cut +if (m/(.)/) { + 'some string' =~ m/(s)/; + my $s = $1; +} + +#----------------------------------------------------------------------------- + +## name good passes +## failures 0 +## cut +if ($str =~ m/(.)/) { + return $1; +} +elsif ($foo =~ s/(b)//) { + $bar = $1; +} + +if ($str =~ m/(.)/) { + while (1) { + return $1; + } +} + +while ($str =~ m/\G(.)/cg) { + print $1; +} + +print $0; # not affected by policy +print $_; # not affected by policy +print $f1; # not affected by policy + +my $result = $str =~ m/(.)/; +if ($result) { + return $1; +} + +#----------------------------------------------------------------------------- + +## name ternary passes +## failures 0 +## cut +print m/(.)/ ? $1 : 'undef'; +print !m/(.)/ ? 'undef' : $1; +print s/(.)// ? $1 : 'undef'; +print !s/(.)// ? 'undef' : $1; +$foo = m/(.)/ && $1; +$foo = !m/(.)/ || $1; +$foo = s/(.)// && $1; +$foo = !s/(.)// || $1; + +#----------------------------------------------------------------------------- + +## name Regression for PPI::Statement::Expressions +## failures 0 +## cut + +if (m/(\d+)/xms) { + $foo = ($1); +} + +#----------------------------------------------------------------------------- + +## name Regression for ternaries with structures +## failures 0 +## cut + +$str =~ m/(.)/xms ? foo($1) : die; +$str =~ m/(.)/xms ? [$1] : die; +$str =~ m/(.)/xms ? { match => $1 } : die;