Build all packages removed dependencies of libtest-exception-perl libtest-warn-perl...
[dh-make-perl] / dev / i386 / libperl-critic-perl / libperl-critic-perl-1.088 / t / Subroutines / RequireArgUnpacking.run
diff --git a/dev/i386/libperl-critic-perl/libperl-critic-perl-1.088/t/Subroutines/RequireArgUnpacking.run b/dev/i386/libperl-critic-perl/libperl-critic-perl-1.088/t/Subroutines/RequireArgUnpacking.run
new file mode 100644 (file)
index 0000000..7d6cd7c
--- /dev/null
@@ -0,0 +1,202 @@
+##############################################################################
+#      $URL: http://perlcritic.tigris.org/svn/perlcritic/trunk/Perl-Critic/t/Subroutines/RequireArgUnpacking.run $
+#     $Date: 2008-03-16 17:40:45 -0500 (Sun, 16 Mar 2008) $
+#   $Author: clonezone $
+# $Revision: 2187 $
+##############################################################################
+
+## name basic passes
+## failures 0
+## cut
+
+sub forward;
+
+sub foo {
+   my ($self, $bar) = @_;
+   print $bar;
+   return;
+}
+
+sub fu {
+   my $self = shift;
+   my $bar = shift;
+   print $bar;
+   return;
+}
+
+#-----------------------------------------------------------------------------
+
+## name prototype passes
+## failures 0
+## cut
+
+sub foo() {
+   print $bar;
+   return;
+}
+
+#-----------------------------------------------------------------------------
+
+## name scheduled subs
+## failures 0
+## cut
+
+BEGIN {
+  print 1;
+  print 2;
+  print 3;
+}
+
+INIT {
+  print 1;
+  print 2;
+  print 3;
+}
+
+CHECK {
+  print 1;
+  print 2;
+  print 3;
+}
+
+END {
+  print 1;
+  print 2;
+  print 3;
+}
+
+#-----------------------------------------------------------------------------
+
+## name passes - no arguments
+## failures 0
+## cut
+
+sub few { }
+sub phu { 1; }
+sub phoo { return; }
+
+#-----------------------------------------------------------------------------
+
+## name failure - not idiomatic enough
+## failures 2
+## cut
+
+sub quux {
+    my $self = shift @_;
+    print $self;
+}
+
+sub cwux {
+    my ($self) = ($_[0]);
+    print $self;
+}
+
+#-----------------------------------------------------------------------------
+
+## name basic failures
+## failures 2
+## cut
+
+sub bar {
+  print $_[0];
+  print $_[1];
+  print $_[2];
+  print $_[3];
+}
+
+sub barr { 
+  print $_[1];
+}
+
+#-----------------------------------------------------------------------------
+
+## name failure in an anonymous sub
+## failures 1
+## TODO PPI v1.118 doesn't recognize anonymous subroutines
+## cut
+
+my $x = bar {
+  print $_[0];
+  print $_[1];
+  print $_[2];
+  print $_[3];
+}
+
+#-----------------------------------------------------------------------------
+
+## name basic failures, set config higher
+## failures 1
+## parms {short_subroutine_statements => 1}
+## cut
+
+sub bar {
+  print $_[0];
+  print $_[1];
+  print $_[2];
+  print $_[3];
+}
+
+sub barr { 
+  print $_[1];
+}
+
+#-----------------------------------------------------------------------------
+
+## name mixed failures
+## failures 2
+## cut
+
+sub baz {
+  my $self = shift;
+  print $_[0];
+  print $_[1];
+  print $_[2];
+  print $_[3];
+}
+
+sub baaz {
+  my ($self) = @_;
+  print $_[0];
+  print $_[1];
+  print $_[2];
+  print $_[3];
+}
+
+#-----------------------------------------------------------------------------
+
+## name nested anon sub
+## failures 0
+## cut
+
+sub baz {
+    print "here\n";
+    return sub {
+        my ($self) = @_;
+        print $self->{bar};
+    };
+}
+
+#-----------------------------------------------------------------------------
+
+## name nested name sub
+## failures 0
+## cut
+
+sub baz {
+    print "here\n";
+    sub bar {
+        my ($self) = @_;
+        print $self->{bar};
+    }
+    $x->bar();
+}
+
+#-----------------------------------------------------------------------------
+# Local Variables:
+#   mode: cperl
+#   cperl-indent-level: 4
+#   fill-column: 78
+#   indent-tabs-mode: nil
+#   c-indentation-style: bsd
+# End:
+# ex: set ts=8 sts=4 sw=4 tw=78 ft=perl expandtab shiftround :