# # spec file for package perl-Test-Pod-Coverage # # Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: perl-Test-Pod-Coverage Version: 1.10 Release: 277.92 %define cpan_name Test-Pod-Coverage Summary: Check for pod coverage in your distribution. License: Artistic-1.0 or GPL-1.0+ Group: Development/Libraries/Perl Url: http://search.cpan.org/dist/Test-Pod-Coverage/ Source: http://www.cpan.org/authors/id/N/NE/NEILB/%{cpan_name}-%{version}.tar.gz BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl BuildRequires: perl-macros BuildRequires: perl(Pod::Coverage) Requires: perl(Pod::Coverage) %{perl_requires} %description Test::Pod::Coverage is used to create a test for your distribution, to ensure that all relevant files in your distribution are appropriately documented in pod. Can also be called with the Pod::Coverage manpage parms. use Test::Pod::Coverage tests=>1; pod_coverage_ok( "Foo::Bar", { also_private => [ qr/^[A-Z_]+$/ ], }, "Foo::Bar, with all-caps functions as privates", ); The the Pod::Coverage manpage parms are also useful for subclasses that don't re-document the parent class's methods. Here's an example from the Mail::SRS manpage. pod_coverage_ok( "Mail::SRS" ); # No exceptions # Define the three overridden methods. my $trustme = { trustme => [qr/^(new|parse|compile)$/] }; pod_coverage_ok( "Mail::SRS::DB", $trustme ); pod_coverage_ok( "Mail::SRS::Guarded", $trustme ); pod_coverage_ok( "Mail::SRS::Reversable", $trustme ); pod_coverage_ok( "Mail::SRS::Shortcut", $trustme ); Alternately, you could use the Pod::Coverage::CountParents manpage, which always allows a subclass to reimplement its parents' methods without redocumenting them. For example: my $trustparents = { coverage_class => 'Pod::Coverage::CountParents' }; pod_coverage_ok( "IO::Handle::Frayed", $trustparents ); (The 'coverage_class' parameter is not passed to the coverage class with other parameters.) If you want POD coverage for your module, but don't want to make Test::Pod::Coverage a prerequisite for installing, create the following as your _t/pod-coverage.t_ file: use Test::More; eval "use Test::Pod::Coverage"; plan skip_all => "Test::Pod::Coverage required for testing pod coverage" if $@; plan tests => 1; pod_coverage_ok( "Pod::Master::Html"); Finally, Module authors can include the following in a _t/pod-coverage.t_ file and have 'Test::Pod::Coverage' automatically find and check all modules in the module distribution: use Test::More; eval "use Test::Pod::Coverage 1.00"; plan skip_all => "Test::Pod::Coverage 1.00 required for testing POD coverage" if $@; all_pod_coverage_ok(); %prep %setup -q -n %{cpan_name}-%{version} %build %{__perl} Makefile.PL INSTALLDIRS=vendor %{__make} %{?_smp_mflags} %check %{__make} test %install %perl_make_install %perl_process_packlist %perl_gen_filelist %files -f %{name}.files %defattr(-,root,root,755) %doc Changes README %changelog * Fri Jul 25 2014 coolo@suse.com - updated to 1.10 - Changed license to Artistic 2.0, at PETDANCE's request. - Added README - Moved Coverage.pm to lib/Test/Pod/Coverage.pm - Min perl version now set to 5.006 in both code and dist metadata. Addresses RT#21564 from ANDK++ - Added DESCRIPTION section to pod (RT#28715 JEREMIAH++), and changed to a minimal SYNOPSIS, with everything else moved to the DESCRIPTION. - The "no verbose" tests in t/nosymbols.t weren't ensuring that the tests were running with HARNESS_VERBOSE set to false. You could set that true in your environment and break the test. RT#53947 - thanks to Pete Armstrong. - Makefile.PL: Ensured all prereqs listed in PREREQ_PM, and TEST_REQUIRES set if a recent enough ExtUtils::MakeMaker. - Added github repo to pod and dist metadata - Deleted the old META.yml, so new MYMETA.{yml,json} will be generated. - Reformatted as per CPAN::Changes::Spec 1.09_01 2014-07-08 NEILB - Specified license as 'Perl' in metadata, to match doc. - All of the changes in 1.10 were first done in this developer release, apart from the change to Artistic License 2.0. * Tue Dec 6 2011 coolo@suse.com - license is perl license * Fri Nov 18 2011 coolo@suse.com - use original .tar.gz * Wed Dec 1 2010 coolo@novell.com - switch to perl_requires macro * Tue Sep 21 2010 dbahi@novell.com - recreated with cpanspec 1.78 * Sun Jan 10 2010 jengelh@medozas.de - enable parallel build * Sat Jul 25 2009 chris@computersalat.de - spec mods * removed ^---------- * removed ^#--------- * Thu Jun 18 2009 chris@computersalat.de - spec fix for perl-macros * Tue Jun 16 2009 chris@computersalat.de - added perl-macros o autogen filelist with perl_gen_filelist * Fri Jun 12 2009 chris@computersalat.de - some spec mods o updated header o fixed deps o autogen filelist * Wed Oct 17 2007 pth@suse.de - Fix Requires. - Clean up the spec file * Fri Oct 20 2006 pth@suse.de - Initial package