Login
Add test case to RequireEndWithOne.run from Schwern's
authorElliot Shank <perl@galumph.com>
Sun, 7 Sep 2008 09:22:09 +0000 (09:22 +0000)
committerElliot Shank <perl@galumph.com>
Sun, 7 Sep 2008 09:22:09 +0000 (09:22 +0000)
patch in RT #39024.

Changes
lib/Perl/Critic/Policy/Modules/RequireEndWithOne.pm
t/99_pod_coverage.t
t/Modules/RequireEndWithOne.run

diff --git a/Changes b/Changes
index b2f8954..8bf7ae3 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,9 @@
 [1.xxx] Released on 2008-xx-xx
 
+    New Developer Features:
+    * Perl::Critic::Policy::is_document_exempt() is checked prior to scanning
+      and thus can speed things up.
+
     Bug Fixes:
     * Miscellanea::RequireRcsKeywords couldn't find keywords after __END__
       that didn't look like part of POD.
index ee3a470..fe36d34 100644 (file)
@@ -31,9 +31,14 @@ sub applies_to           { return 'PPI::Document'     }
 
 #-----------------------------------------------------------------------------
 
+sub is_document_exempt {
+    my ( $self, $document ) = @_;
+
+    return is_script($document);   # Must be a library or module.
+}
+
 sub violates {
     my ( $self, $elem, $doc ) = @_;
-    return if is_script($doc);   #Must be a library or module.
 
     # Last statement should be just "1;"
     my @significant = grep { _is_code($_) } $doc->schildren();
index 64a75e5..d402a23 100644 (file)
@@ -57,6 +57,7 @@ sub get_trusted_methods {
     return qw(
         new
         initialize_if_enabled
+        is_document_exempt
         violates
         applies_to
         default_themes
index 50bfada..21dd43e 100644 (file)
@@ -98,6 +98,15 @@ END {}
 
 #-----------------------------------------------------------------------------
 
+## name programs are exempt
+## failures 0
+## parms
+## cut
+#!/usr/bin/perl
+my $foo = 42;
+
+#-----------------------------------------------------------------------------
+
 ## name DESTROY sub hides the 1;
 ## TODO This is a PPI bug. See http://rt.cpan.org/Ticket/Display.html?id=27364
 ## failures 0
@@ -107,3 +116,20 @@ DESTROY { warn 'DEAD'; }
 
 1;
 
+#-----------------------------------------------------------------------------
+
+##############################################################################
+#      $URL$
+#     $Date$
+#   $Author$
+# $Revision$
+##############################################################################
+
+# 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 :