From 58dde6f139ca7e04f29edb44e9cabfcbf530b8e8 Mon Sep 17 00:00:00 2001 From: Colin Campbell Date: Tue, 15 Mar 2011 14:37:48 +0100 Subject: [PATCH] [SIGNED OFF] Bug 5485: Add script to run Test::Perl::Critic Tests are run if TEST_QA environment variable is set and Test::Perl::Critic is installed e.g. TEST_QA=1 prove =l t/00-testcritic.t Signed-off-by: Julian Maurice --- t/00-testcritic.t | 37 +++++++++++++++++++++++++++++++++++++ t/perlcriticrc | 1 + 2 files changed, 38 insertions(+), 0 deletions(-) create mode 100755 t/00-testcritic.t create mode 100644 t/perlcriticrc diff --git a/t/00-testcritic.t b/t/00-testcritic.t new file mode 100755 index 0000000..65f2288 --- /dev/null +++ b/t/00-testcritic.t @@ -0,0 +1,37 @@ +#!/usr/bin/env perl +use strict; +use warnings; + +# This script can be used to run perlcritic on perl files in koha +# It calls its own custom perlcriticrc +# The script is purely optional requiring Test::Perl::Critic to be installed +# and the environment variable TEST_QA to be set +# At present only the directories in @dirs will pass the tests in 'Gentle' mode + +use File::Spec; +use Test::More; +use English qw(-no_match_vars); + +my @all_koha_dirs = qw( acqui admin authorities basket C4 catalogue cataloguing circ debian errors +labels members misc offline_circ opac patroncards reports reserve reviews rotating_collections +serials sms suggestion t tags test tools virtualshelves); + +my @dirs = qw( basket circ debian errors offline_circ reserve reviews rotating_collections +serials sms virtualshelves ); + +if ( not $ENV{TEST_QA} ) { + my $msg = 'Author test. Set $ENV{TEST_QA} to a true value to run'; + plan( skip_all => $msg ); +} + +eval { require Test::Perl::Critic; }; + +if ( $EVAL_ERROR ) { + my $msg = 'Test::Perl::Critic required to criticise code,'; + plan( skip_all => $msg ); +} + +my $rcfile = File::Spec->catfile( 't', 'perlcriticrc' ); +Test::Perl::Critic->import( -profile => $rcfile); +all_critic_ok(@dirs); + diff --git a/t/perlcriticrc b/t/perlcriticrc new file mode 100644 index 0000000..53a34a6 --- /dev/null +++ b/t/perlcriticrc @@ -0,0 +1 @@ +exclude = Miscellanea::RequireRcsKeywords -- 1.7.1