From 5ebb5d4f4cd7709751e5f201fada5351d0e9c29e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fr=C3=A9d=C3=A9ric=20Demians?= Date: Thu, 11 Nov 2010 09:11:00 +0100 Subject: [PATCH] Bug 5105 Regression test for switch statement Add a test identifying Perl scripts and modules using switch statements. This test file follow Chris pre-hook naming convention in order to be triggered for patch submissions. Signed-off-by: Chris Cormack --- t/00-deprecated.t | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 t/00-deprecated.t diff --git a/t/00-deprecated.t b/t/00-deprecated.t new file mode 100755 index 0000000000..6eba09deba --- /dev/null +++ b/t/00-deprecated.t @@ -0,0 +1,27 @@ +#!/usr/bin/perl +# +# Tests usage of deprecated Perl syntax. Deprecated could be extended to the +# sense of 'not allowed'. +# +use warnings; +use strict; +use Test::More tests => 1; +use File::Find; +use Cwd; + +my @files_with_switch = do { + my @files; + local $/ = undef; + find( sub { + my $dir = getcwd(); + return if $dir =~ /blib/; + return unless /\.(pl|pm)$/; # Don't inspect non-Perl files + open my $fh, "<", $_; + my $content = <$fh>; + push @files, "$dir/$_" if $content =~ /switch\s*\(.*{/; + }, ( '.' ) ); + @files; +}; +ok( !@files_with_switch, "Perl syntax: no use of switch statement" ) + or diag( "Files list: " . join(', ', @files_with_switch) ); + -- 2.20.1