diff options
-rw-r--r-- | debian/changelog | 2 | ||||
-rwxr-xr-x | debian/rules | 2 | ||||
-rwxr-xr-x | t/size | 28 |
3 files changed, 31 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog index f19fa778..9a993bd5 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,8 @@ debhelper (5.0.38) UNRELEASED; urgency=low [ Joey Hess] * move po4a to Build-Depends as it's run in clean. + * Add size test, which fails on any debhelper program of more than 150 + lines. This is not a joke, and 100 lines would be better. -- Joey Hess <joeyh@debian.org> Sun, 2 Jul 2006 18:11:49 -0400 diff --git a/debian/rules b/debian/rules index f2401f75..af5c5e34 100755 --- a/debian/rules +++ b/debian/rules @@ -36,7 +36,7 @@ POD2MAN=pod2man -c Debhelper -r "$(VERSION)" LANGS=$(notdir $(basename $(wildcard man/po4a/po/*.po))) version: - printf "package Debian::Debhelper::Dh_Version;\n\$$version='$(VERSION)';" > \ + printf "package Debian::Debhelper::Dh_Version;\n\$$version='$(VERSION)';\n1" > \ Debian/Debhelper/Dh_Version.pm build: version test build-stamp @@ -0,0 +1,28 @@ +#!/usr/bin/perl +# This may appear arbitrary, but DO NOT CHANGE IT. +# Debhelper is supposed to consist of small, simple, easy to understand +# programs. Programs growing in size and complexity without bounds is a +# bug. +use Test; + +my @progs=grep { -x $_ } glob("dh_*"); + +plan(tests => (@progs + @progs)); + +foreach my $file (@progs) { + my $lines=0; + my $maxlength=0; + open(IN, $file) || die "open: $!"; + my $cutting=0; + while (<IN>) { + $cutting=1 if /^=/; + $cutting=0 if /^=cut/; + next if $cutting || /^(=|\s*\#)/; + $lines++; + $maxlength=length($_) if length($_) > $maxlength; + } + close IN; + print "# $file has $lines lines, max length is $maxlength\n"; + ok($lines < 150); + ok($maxlength < 160); +} |