diff options
author | Guillem Jover <guillem@debian.org> | 2016-06-15 02:05:42 +0200 |
---|---|---|
committer | Guillem Jover <guillem@debian.org> | 2016-07-03 21:02:23 +0200 |
commit | 5104e0e0c00f90f46fcd7307234c7f76a397dfc0 (patch) | |
tree | a11ecac20c6fee4d7885513fed378726e9ec3f64 | |
parent | 50a0d0c436279ae7c8024fd0d3eb07f5f9ac0051 (diff) | |
download | dpkg-5104e0e0c00f90f46fcd7307234c7f76a397dfc0.tar.gz |
test: Add new pod-spell unit test
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | README | 3 | ||||
-rw-r--r-- | debian/changelog | 1 | ||||
-rw-r--r-- | t/pod-spell.t | 96 |
4 files changed, 101 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index 4ccc3ca8f..62dc5e080 100644 --- a/Makefile.am +++ b/Makefile.am @@ -145,6 +145,7 @@ endif test_scripts = \ t/pod.t \ + t/pod-spell.t \ t/syntax.t \ t/strict.t \ t/critic.t \ @@ -76,8 +76,11 @@ To run the test suite («make check»): IO-String perl module Test::Pod perl module (optional) + Test::Spelling perl module (optional, author) Test::Strict perl module (optional) Test::Perl::Critic perl module (optional) + aspell (optional, author) + aspell-en (optional, author) Define the environment variable DPKG_DEVEL_MODE to run the test suite in development mode, to include tests that might not be pertinent during diff --git a/debian/changelog b/debian/changelog index 9162e6fec..4437b88e6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -75,6 +75,7 @@ dpkg (1.18.8) UNRELEASED; urgency=medium * Test suite: - Bump perlcritic ValuesAndExpressions::RequireNumberSeparators minimum to 99999. + - Add new pod-spell unit test. * Documentation: - Improve dpkg-buildpackage(1) on environment expectations. - Clarify the format of the db:Status-Abbrev virtual field in diff --git a/t/pod-spell.t b/t/pod-spell.t new file mode 100644 index 000000000..4d21e3e0f --- /dev/null +++ b/t/pod-spell.t @@ -0,0 +1,96 @@ +#!/usr/bin/perl +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <https://www.gnu.org/licenses/>. + +use strict; +use warnings; + +use Test::More; +use Test::Dpkg; + +use IPC::Cmd qw(can_run); + +if (defined $ENV{srcdir}) { + chdir $ENV{srcdir} or die "cannot chdir to source directory: $!"; +} + +plan skip_all => 'author test' unless $ENV{AUTHOR_TESTING}; + +eval 'use Test::Spelling'; +plan skip_all => 'Test::Spelling required for spell checking POD' if $@; + +if (not can_run('aspell')) { + plan skip_all => 'aspell required for spell checking POD'; +} + +if (qx(aspell dicts) !~ m/en_US/) { + plan skip_all => 'aspell en_US dictionary required for spell checking POD'; +} + +my @files = Test::Dpkg::all_perl_files(); + +plan tests => scalar @files; + +set_spell_cmd('aspell list --encoding UTF-8 -l en_US -p /dev/null'); +add_stopwords(<DATA>); + +for my $file (@files) { + pod_file_spelling_ok($file); +} + +__DATA__ +CVS +DSC +Dpkg +IPC +ORed +OpenPGP +XDG +archqual +bzip2 +canonicalized +checksum +checksums +cmdline +debian +decompressor +dep +deps +dpkg +dpkg-buildflags +dpkg-checkbuilddeps +dpkg-dev +dpkg-gencontrol +dpkg-parsechangelog +dsc +dup'ed +env +envvar +fieldnames +ge +gettext +hurd +keyrings +le +lzma +multiarch +nocheck +qa +reportfile +rfc822 +sig +substvars +unparsed +update-buildflags +xz |