Hello community,
here is the log from the commit of package perl-Test-Inter for openSUSE:Factory checked in at 2015-04-16 14:13:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test-Inter (Old)
and /work/SRC/openSUSE:Factory/.perl-Test-Inter.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Test-Inter"
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Test-Inter/perl-Test-Inter.changes 2013-06-06 13:51:14.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Test-Inter.new/perl-Test-Inter.changes 2015-04-16 14:13:37.000000000 +0200
@@ -1,0 +2,6 @@
+Tue Apr 14 20:24:56 UTC 2015 - coolo@suse.com
+
+- updated to 1.06
+ see /usr/share/doc/packages/perl-Test-Inter/Changes
+
+-------------------------------------------------------------------
Old:
----
Test-Inter-1.05.tar.gz
New:
----
Test-Inter-1.06.tar.gz
cpanspec.yml
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Test-Inter.spec ++++++
--- /var/tmp/diff_new_pack.rJyZj3/_old 2015-04-16 14:13:37.000000000 +0200
+++ /var/tmp/diff_new_pack.rJyZj3/_new 2015-04-16 14:13:37.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Test-Inter
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,26 +17,26 @@
Name: perl-Test-Inter
-Version: 1.05
+Version: 1.06
Release: 0
%define cpan_name Test-Inter
-Summary: framework for more readable interactive test scripts
+Summary: Framework for More Readable Interactive Test Scripts
License: Artistic-1.0 or GPL-1.0+
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/Test-Inter/
-Source: http://www.cpan.org/authors/id/S/SB/SBECK/%{cpan_name}-%{version}.tar.gz
+Source0: http://www.cpan.org/authors/id/S/SB/SBECK/%{cpan_name}-%{version}.tar.gz
+Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
-BuildRequires: perl(Module::Build) >= 0.39
-#BuildRequires: perl(Test::Inter)
+BuildRequires: perl(Module::Build) >= 0.21
%{perl_requires}
%description
-This is another framework for writing test scripts. It is loosely inspired
-by Test::More, and has most of it's functionality, but it is not a drop-in
-replacement.
+This is another framework for writing test scripts. Some of the syntax is
+loosely inspired by Test::More, and has most of it's functionality, but it
+is not a drop-in replacement.
Test::More (and other existing test frameworks) suffer from two weaknesses,
both of which have prevented me from ever using them:
@@ -48,6 +48,12 @@
whatever format would make the tests the most
readable
+The way I write and use test scripts, existing Test::* modules are not
+nearly as useful as they could be. Test scripts written using Test::More
+work fine when running as part of the test suite, but debugging an
+individual test requires extra steps, and the tests themselves are not as
+readable as they should be.
+
%prep
%setup -q -n %{cpan_name}-%{version}
find . -type f -print0 | xargs -0 chmod 644
@@ -65,6 +71,6 @@
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc ChangeLog examples LICENSE README TODO
+%doc Changes examples LICENSE README
%changelog
++++++ Test-Inter-1.05.tar.gz -> Test-Inter-1.06.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/.travis.yml new/Test-Inter-1.06/.travis.yml
--- old/Test-Inter-1.05/.travis.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/Test-Inter-1.06/.travis.yml 2014-09-10 16:15:44.000000000 +0200
@@ -0,0 +1,9 @@
+language: perl
+perl:
+ - "5.20"
+ - "5.18"
+ - "5.16"
+ - "5.14"
+ - "5.12"
+ - "5.10"
+ - "5.8"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/Build.PL new/Test-Inter-1.06/Build.PL
--- old/Test-Inter-1.05/Build.PL 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/Build.PL 2015-02-11 14:58:34.000000000 +0100
@@ -1,30 +1,64 @@
-use Module::Build;
+######################################################################
+# Build.PL for Test::Inter
+######################################################################
+
use strict;
use warnings;
+use 5.006;
+use Module::Build 0.21;
+
+my %module_prereq = (
+ 'perl' => '5.006',
+ 'File::Basename' => '0',
+ 'IO::File' => '0',
+);
+
+my %script_prereq = (
+);
-my %requires = (
- 'perl' => '5.004',
- 'File::Basename' => '0',
- 'IO::File' => '0',
- );
-my %build_mods = (
- );
+my %test_prereq = (
+ 'Test::More' => '0',
+);
+
+my %config_prereq = (
+ 'Module::Build' => '0.21',
+);
+my %build_prereq = %config_prereq;
+if ($Module::Build::VERSION < 0.4004) {
+ %build_prereq = (%config_prereq,%test_prereq);
+}
my $class = Module::Build->subclass(
- class => "Module::Build::Custom",
- code => q { sub ACTION_html { my $self = shift ; $self->SUPER::ACTION_html ( @_ ) if ( $ENV{ MAKE_HTML } ) ; } }
+ class => "Module::Build::Custom",
+ code => q { sub ACTION_html { my $self = shift ; $self->SUPER::ACTION_html ( @_ ) if ( $ENV{ MAKE_HTML } ) ; } }
);
my $build = $class->new(
- license => 'perl',
- dist_version => '1.05',
- dist_author => 'Sullivan Beck ',
- module_name => 'Test::Inter',
- dist_abstract => 'framework for more readable interactive test scripts',
- requires => \%requires,
- build_requires => \%build_mods,
- sign => 1,
+ module_name => "Test::Inter",
+ dist_version => "1.06",
+ dist_abstract => "framework for more readable interactive test scripts",
+ license => "perl",
+ dist_author => "Sullivan Beck ",
+
+ requires => \%module_prereq,
+ ($Module::Build::VERSION >= 0.4004
+ ? (test_requires => \%test_prereq)
+ : ()),
+ ($Module::Build::VERSION >= 0.30
+ ? (configure_requires => \%config_prereq)
+ : ()),
+ build_requires => \%build_prereq,
+ recommends => \%script_prereq,
+ sign => 1,
+
+ ($Module::Build::VERSION >= 0.28
+ ? (meta_merge => {
+ resources => {
+ repository => "https://github.com/SBECK-github/Test-Inter",
+ }
+ })
+ : ()),
);
$build->create_build_script;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/ChangeLog new/Test-Inter-1.06/ChangeLog
--- old/Test-Inter-1.05/ChangeLog 2013-03-20 13:47:19.000000000 +0100
+++ new/Test-Inter-1.06/ChangeLog 1970-01-01 01:00:00.000000000 +0100
@@ -1,20 +0,0 @@
-
-Version 1.00 2010-04-29
- Initial release.
-
-Version 1.01 2010-04-29
- Use File::Basename and IO::File to get rid of two unix dependencies.
-
-Version 1.02 2011-06-23
- Added 'width' method.
- Updated some tests which did not run correctly with perl 5.015. Renee Baecker
-
-Version 1.03 2011-06-28
- Missed one of the tests that fail with perl 5.015.
-
-Version 1.04 2013-03-18
- The __nl__ substitution wasn't happening.
-
-Version 1.05 2013-03-20
- Fixed the Build.PL/Makefile.PL scripts to not install the example scripts. RT 84091
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/Changes new/Test-Inter-1.06/Changes
--- old/Test-Inter-1.05/Changes 1970-01-01 01:00:00.000000000 +0100
+++ new/Test-Inter-1.06/Changes 2015-02-11 14:58:08.000000000 +0100
@@ -0,0 +1,30 @@
+Written by:
+ Sullivan Beck (sbeck@cpan.org)
+Any suggestions, bug reports, or donations :-) should be sent to me.
+
+1.00 2010-04-29
+ - Initial release.
+
+1.01 2010-04-29
+ - Use File::Basename and IO::File to get rid of two unix dependencies.
+
+1.02 2011-06-23
+ - Added 'width' method.
+ - Updated some tests which did not run correctly with perl 5.015. Renee Baecker
+
+1.03 2011-06-28
+ - Missed one of the tests that fail with perl 5.015.
+
+1.04 2013-03-18
+ - The __nl__ substitution wasn't happening.
+
+1.05 2013-03-20
+ - Fixed the Build.PL/Makefile.PL scripts to not install the example scripts.
+ RT 84091
+
+1.06 2015-02-11
+ - Fixed some typos. RT 88523.
+ - Changed ChangeLog file to new Changes specification.
+ - Documentation improvments
+ - Put distro on GitHub. Gabor Szabo
+ - Fixed Module::Build requirement. RT 102059.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/INSTALL new/Test-Inter-1.06/INSTALL
--- old/Test-Inter-1.05/INSTALL 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/INSTALL 2015-02-11 14:58:34.000000000 +0100
@@ -1,6 +1,7 @@
For instructions on installing this, or any other perl module in
a UNIX environment, please refer to:
+ http://www.cpan.org/modules/INSTALL.html
http://learn.perl.org/faq/perlfaq8.html#How-do-I-install-a-module-from-CPAN-
For instructions in a Windows environment running ActivePerl,
@@ -9,3 +10,7 @@
http://docs.activestate.com/activeperl/5.6/faq/ActivePerl-faq2.html
http://docs.activestate.com/activeperl/5.8/faq/ActivePerl-faq2.html
http://docs.activestate.com/activeperl/5.10/faq/ActivePerl-faq2.html
+ http://docs.activestate.com/activeperl/5.12/faq/ActivePerl-faq2.html
+ http://docs.activestate.com/activeperl/5.14/faq/ActivePerl-faq2.html
+ http://docs.activestate.com/activeperl/5.16/faq/ActivePerl-faq2.html
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/MANIFEST new/Test-Inter-1.06/MANIFEST
--- old/Test-Inter-1.05/MANIFEST 2013-03-20 13:47:39.000000000 +0100
+++ new/Test-Inter-1.06/MANIFEST 2015-02-11 14:58:35.000000000 +0100
@@ -1,5 +1,6 @@
+.travis.yml
Build.PL
-ChangeLog
+Changes
examples/is
examples/ok
examples/plan
@@ -7,6 +8,9 @@
examples/use_ok
INSTALL
internal/build.yaml
+internal/ispell.isp
+internal/NOTES
+internal/TODO
lib/Test/Inter.pm
lib/Test/Inter.pod
LICENSE
@@ -30,5 +34,4 @@
t/use_ok.1.t
t/use_ok.2.t
t/use_ok.3.t
-TODO
META.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/META.json new/Test-Inter-1.06/META.json
--- old/Test-Inter-1.05/META.json 2013-03-20 13:47:39.000000000 +0100
+++ new/Test-Inter-1.06/META.json 2015-02-11 14:58:35.000000000 +0100
@@ -4,7 +4,7 @@
"Sullivan Beck "
],
"dynamic_config" : 1,
- "generated_by" : "Module::Build version 0.3901, CPAN::Meta::Converter version 2.120921",
+ "generated_by" : "Module::Build version 0.4205",
"license" : [
"perl_5"
],
@@ -14,30 +14,43 @@
},
"name" : "Test-Inter",
"prereqs" : {
+ "build" : {
+ "requires" : {
+ "Module::Build" : "0.21"
+ }
+ },
"configure" : {
"requires" : {
- "Module::Build" : "0.39"
+ "Module::Build" : "0.21"
}
},
"runtime" : {
"requires" : {
"File::Basename" : "0",
"IO::File" : "0",
- "perl" : "5.004"
+ "perl" : "5.006"
+ }
+ },
+ "test" : {
+ "requires" : {
+ "Test::More" : "0"
}
}
},
"provides" : {
"Test::Inter" : {
"file" : "lib/Test/Inter.pm",
- "version" : "1.05"
+ "version" : "1.06"
}
},
"release_status" : "stable",
"resources" : {
"license" : [
"http://dev.perl.org/licenses/"
- ]
+ ],
+ "repository" : {
+ "url" : "https://github.com/SBECK-github/Test-Inter"
+ }
},
- "version" : "1.05"
+ "version" : "1.06"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/META.yml new/Test-Inter-1.06/META.yml
--- old/Test-Inter-1.05/META.yml 2013-03-20 13:47:39.000000000 +0100
+++ new/Test-Inter-1.06/META.yml 2015-02-11 14:58:35.000000000 +0100
@@ -2,24 +2,27 @@
abstract: 'framework for more readable interactive test scripts'
author:
- 'Sullivan Beck '
-build_requires: {}
+build_requires:
+ Module::Build: '0.21'
+ Test::More: '0'
configure_requires:
- Module::Build: 0.39
+ Module::Build: '0.21'
dynamic_config: 1
-generated_by: 'Module::Build version 0.3901, CPAN::Meta::Converter version 2.120921'
+generated_by: 'Module::Build version 0.4205, CPAN::Meta::Converter version 2.143240'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
- version: 1.4
+ version: '1.4'
name: Test-Inter
provides:
Test::Inter:
file: lib/Test/Inter.pm
- version: 1.05
+ version: '1.06'
requires:
- File::Basename: 0
- IO::File: 0
- perl: 5.004
+ File::Basename: '0'
+ IO::File: '0'
+ perl: '5.006'
resources:
license: http://dev.perl.org/licenses/
-version: 1.05
+ repository: https://github.com/SBECK-github/Test-Inter
+version: '1.06'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/Makefile.PL new/Test-Inter-1.06/Makefile.PL
--- old/Test-Inter-1.05/Makefile.PL 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/Makefile.PL 2015-02-11 14:58:34.000000000 +0100
@@ -1,22 +1,63 @@
+######################################################################
+# Makefile.PL for Test::Inter
+######################################################################
-use ExtUtils::MakeMaker;
-use 5.004;
use strict;
use warnings;
-my %requires = (
- 'File::Basename' => '0',
- 'IO::File' => '0',
- );
+use 5.006;
+use ExtUtils::MakeMaker 6.30;
+my %module_prereq = (
+ 'File::Basename' => '0',
+ 'IO::File' => '0',
+);
+
+my %script_prereq = (
+);
+
+my %test_prereq = (
+ 'Test::More' => '0',
+);
+
+my %config_prereq = (
+ 'ExtUtils::MakeMaker' => '6.30',
+);
+
+%module_prereq = (%module_prereq,%script_prereq);
+my $EU_MM_V = $ExtUtils::MakeMaker::VERSION;
+$EU_MM_V =~ s/_//g;
+if ($EU_MM_V < 6.64) {
+ %config_prereq = (%config_prereq,%test_prereq);
+}
WriteMakefile(
- NAME => 'Test::Inter',
- VERSION => '1.05',
- ($] >= 5.004
- ? (ABSTRACT=>'framework for more readable interactive test scripts',
- AUTHOR =>'Sullivan Beck (sbeck@cpan.org)')
- : ()),
- 'dist' => {COMPRESS=>'gzip',SUFFIX=>'gz'},
- PL_FILES => {},
- PREREQ_PM => \%requires,
+ NAME => "Test::Inter",
+ VERSION => "1.06",
+ ABSTRACT => "framework for more readable interactive test scripts",
+ LICENSE => "perl",
+ ($EU_MM_V >= 6.48
+ ? (MIN_PERL_VERSION => "5.006")
+ : ()),
+ AUTHOR => "Sullivan Beck (sbeck\@cpan.org)",
+ "dist" => {COMPRESS=>"gzip",SUFFIX=>"gz"},
+ PL_FILES => {},
+ PREREQ_PM => \%module_prereq,
+ ($EU_MM_V >= 6.52
+ ? (CONFIGURE_REQUIRES => \%config_prereq)
+ : ()),
+ ($EU_MM_V >= 6.64
+ ? (TEST_REQUIRES => \%test_prereq)
+ : ()),
+
+ ($EU_MM_V > 6.45
+ ? (META_MERGE => {
+ resources => {
+ repository => {
+ type => "git",
+ web => "https://github.com/SBECK-github/Test-Inter",
+ url => "git://github.com/SBECK-github/Test-Inter.git",
+ }
+ }
+ })
+ : ()),
);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/README new/Test-Inter-1.06/README
--- old/Test-Inter-1.05/README 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/README 2015-02-11 14:58:34.000000000 +0100
@@ -2,9 +2,9 @@
Test::Inter - framework for more readable interactive test scripts
DESCRIPTION
- This is another framework for writing test scripts. It is loosely
- inspired by Test::More, and has most of it's functionality, but it is
- not a drop-in replacement.
+ This is another framework for writing test scripts. Some of the syntax
+ is loosely inspired by Test::More, and has most of it's functionality,
+ but it is not a drop-in replacement.
Test::More (and other existing test frameworks) suffer from two
weaknesses, both of which have prevented me from ever using them:
@@ -28,7 +28,7 @@
Since I use test scripts in two ways (part of a standard test suite and
to run the scripts in some interactive way to debug problems), I want to
- be able to do the follwing trivially:
+ be able to do the following trivially:
Easy access to a specific test or tests
If I'm running the test script interactively (perhaps in the
@@ -53,36 +53,42 @@
what was input, what was output, and what was expected.
The other feature that I wanted in a test suite is the ability to define
- the tests in a readable format. In almost every case, it is best to
- think of a test script as consisting of two separate parts: a script
- part, and a test part, and the more you can keep the two separate, the
- better.
+ the tests in a format that is natural and readable FOR THE TESTS. In
+ almost every case, it is best to think of a test script as consisting of
+ two separate parts: a script part, and a test part.
The script part of a test script is the least important part! It's
- usually fairly trivial, rarely needs to be changed, and is quite simply
- not the focus of the test script.
+ usually fairly trivial, rarely needs to be changed, and is not the focus
+ of the test script.
The tests part of the script IS the important part, and these should be
- expressed in a form that is easy to maintain, easy to read, and easy to
- modify, and none of these should involve modifying the script portion of
- the test script in general. As a general rule, if the script portion of
- the test script obscures the tests in any way, it's not written
- correctly!
-
- Compare this to any other systems where you are mixing two "languages".
- For example, a PHP script where you have a mixture of PHP and HTML or a
- templating system consisting of text and template commands. The more the
- two languages are interwoven, the less readable both are, and the harder
- it is to maintain.
+ expressed in a form that is natural to them, easy to maintain, easy to
+ read, and easy to modify, and none of these should involve modifying the
+ script portion of the test script in general. Because the content of the
+ tests is the important part of the script, the emphasis should be in
+ making them more readable, even at the expense of the script portion. As
+ a general rule, if the script portion of the test script obscures the
+ tests in any way, it's not written correctly!
+
+ The solution to this is well understood, and is common to many other
+ systems where you are mixing two "languages". The task of correctly
+ specifying both the tests and the test script is virtually identical to
+ the task of creating a PHP script which consists of a mixture of PHP and
+ HTML, or the task of creating a template file using some templating
+ system where the file consists of a mixture of text to be displayed and
+ templating commands. It is well understood in each of these cases that
+ the more the two "languages" are interwoven, the less readable both are,
+ and the harder it is to maintain. The more you are able to separate the
+ two, the easier both are to read and maintain.
As often as possible, I want the tests to be written in some sort of
text format which can be easily read as a table with no perl commands
- interspersed. I want to the freedom to define the tests in one big
- string (perhaps a DATA section, or even in a separate file) which is
+ interspersed. I want to the freedom to define the tests in one section
+ (a long string, the DATA section, or even in a separate file) which is
easily readable. This may introduce the necessity of parsing it, but it
makes it significantly easier to maintain the tests.
- This flexibilty makes it much easier to read the tests (as opposed to
+ This flexibility makes it much easier to read the tests (as opposed to
the script) which is the fundamental content of a test script.
To illustrate some of this, in Test::More, a series of tests might be
@@ -104,17 +110,18 @@
several difficulties with this.
Debugging the script is tedious
- To debug the 3rd test, you have to open up the file and get the line
- number of the 3rd test. You set a breakpoint there and then you can
- run the script.
+ Say you ran the test suite, and test 3 failed. To debug it using a
+ traditional Test::* module, you have to open up the test script,
+ find the 3rd test (which won't necessarily be trivial, especially if
+ you're talking about the 103rd test), and then run the debugger
+ setting a break point at that line number.
+
+ This sequence of steps is typically not very hard (especially when
+ the test script is as simple as the example above), but it's still
+ lots of steps that serve only to break your train of thought.
- It's typically not very hard to do this, but if you have to check
- out the line number every time you want to visit a test, it can
- break your chain of thought.
-
- How much better to be able to say:
-
- break func ($::TI_NUM==3)
+ How much better to be able to set a break point in the function that
+ actually performs the test for the Nth test.
It would also be nice to be able to skip the first two tests...
perhaps they take a long time to run, and I want to get right to
@@ -126,13 +133,14 @@
there is too much perl code among them, and virtually impossible to
look at them as a whole.
- It is true that looking at this as a perl script, it is very
- simple... but the script ISN'T the content you're interested in. The
- REAL content of this script are the tests, which consist of the
+ It is true that looking at this particular example, it is very
+ simple... but the script ISN'T the content you're interested in (and
+ bear in mind that many test scripts are nowhere near this simple).
+ The REAL content of this script are the tests, which consist of the
function arguments and the expected result. Although it's not
impossible to see each of these in the script above, it's not in a
format that is conducive to studying the tests, and especially not
- for examing the list of tests as a whole.
+ for examining the list of tests as a whole.
Now, look at an alternate way of specifying the tests using this module:
@@ -154,13 +162,14 @@
This module supports a number of methods for defining tests, so you can
use whichever one is most convenient (including methods that are
- identical to Test::More).
+ identical to Test::More if that really is the best method).
In addition, the following debugger command works as desired:
b func ($::TI_NUM==3)
- and you're ready to debug.
+ and you're ready to debug (assuming that the test function is named
+ 'func').
CREATING A TEST
Every test may have several pieces of information:
@@ -220,7 +229,7 @@
environment variable (which overrides any value passed to the new
method). Third, you can set a global variable (which overrides both
the environment variable and options passed to the new method).
- Fouth, you can call the appropriate method to set the option. This
+ Forth, you can call the appropriate method to set the option. This
overrides all other methods.
Each of the allowed options are described below in the following
@@ -274,7 +283,7 @@
Otherwise, a skip message is printed out.
If no value is given, it defaults to 0 (which means that all
- reamining tests are run).
+ remaining tests are run).
testnum
$o = new Test::Inter 'testnum' => $N;
@@ -292,8 +301,8 @@
$o->done_testing($n);
The TAP API (the 'language' used to run a sequence of tests and see
- which ones failed and which ones passedd) requires a statement of
- the number of tests that are expected to run.
+ which ones failed and which ones passed) requires a statement of the
+ number of tests that are expected to run.
This statement can appear at the start of the test suite, or at the
end.
@@ -320,7 +329,7 @@
It is NOT strictly required to set a plan if the script is only run
interactively, so if for some reason this module is used for test
- scritps which are not part of a standard perl test suite, the plan
+ scripts which are not part of a standard perl test suite, the plan
and done_testing statements are optional. As a matter of fact, the
script will run just fine without them... but a perl installer will
report a failure in the test suite.
@@ -468,7 +477,7 @@
This is used to load a module using the perl 'require' function. If
$mode is not passed in, the default mode (required) is used to test
- the existance of the module.
+ the existence of the module.
If $mode is passed in, it must be either the string 'forbid' or
'feature'.
@@ -565,7 +574,7 @@
$o->is(TESTS);
$o->isnt(TESTS);
- A test run with is looks as a result and tests to see if it is
+ A test run with is looks at a result and tests to see if it is
identical to an expected result. If it is, the test passes.
Otherwise it fails. In the case of a failure, a diagnostic message
will show what result was actually obtained and what was expected.
@@ -600,31 +609,40 @@
$o->file($func,$input,$outputdir,$expected,$name [,@args]);
Sometimes it may be easiest to store the input, output, and expected
- output from a series of tests in files. In this case, each line of
- output will be treated as a single test, so the output and expected
- output must match up exactly.
+ output from a test in a text file. In this case, each line of output
+ will be treated as a single test, so the output and expected output
+ must match up exactly.
$func is a reference to a function which will produce a temporary
- output file. If $input is specified, it is the name of the input
- file, and it will be passed to the function as the first argument.
- If $input is left blank, no input file will be used. The input file
- may be specified as a full path, or just the file name (in which
- case it will be looked for in the test directory and the current
- directory).
-
- $func also takes a arequired argument which is the output file. The
- tests method will create a tempoary file containing the output. If
- $outputdir is passed in, it is the directory where the output file
- will be written. If $outputdir is left blank, the temporary file
- will be written to the test directory.
+ output file.
- If @args is passed in, it is a list of additional arguments which
- will be passed to $func.
+ If $input is specified, it is the name of the input file. If it is
+ empty, no input file will be used. The input file can be fully
+ specified, or it can be relative to the test directory.
+
+ If $outputdir is passed in, it is the directory where the output
+ file will be written. It can be fully specified, or relative to the
+ test directory. If $outputdir is left blank, the temporary file will
+ be written to the test directory.
- $expected is the name of a file which contains the expeccted output.
+ $expected is the name of a file which contains the expected output.
It can be fully specified, or it will be checked for in the test
directory.
+ $name is the name of this series of tests.
+
+ @args are extra arguments to pass to the test function.
+
+ The function will be called with the arguments:
+
+ &$func( [$input,] $output,@args);
+
+ $input is only passed in if it was passed in to this method. If no
+ input file is specified, nothing will be passed to the function.
+
+ $output is the name of a temporary file where the output will be
+ written to.
+
USING THE TESTS METHOD
It is expected that most tests (except for those that load a module)
will be run using the tests method called as:
@@ -874,7 +892,7 @@
The test may be split across any number of lines, provided there is not
a completely blank line (which signals the end of the test), so the
- following are eqivalent:
+ following are equivalent:
tests => "a b c",
tests => "a b
@@ -1019,6 +1037,10 @@
TI_WIDTH
The width of the terminal.
+ TI_NOCLEAN
+ When running a file test, the temporary output file will not be
+ removed if this is set.
+
HISTORY
The history of this module dates back to 1996 when I needed to write a
test suite for my Date::Manip module. At that time, none of the Test::*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/TODO new/Test-Inter-1.06/TODO
--- old/Test-Inter-1.05/TODO 2011-01-10 15:26:00.000000000 +0100
+++ new/Test-Inter-1.06/TODO 1970-01-01 01:00:00.000000000 +0100
@@ -1,29 +0,0 @@
-Consider adding the following from Test::More
-
- note
- explain
- can_ok
- isa_ok
- subtest
- cmp_ok
-
- like
- unlike
- handles strings match regexps
- lists contain certain element
- hashes contain certain keys
-
-Add support for input files
-
-Look at:
- Test::Group
- Test::Slow
-to see if there's anything I want to add.
-
-Look at using Data::PrettyPrintObjects to print out the results.
-
-Add support for timing tests:
-
- ok 1 (12 ms)
- ok 2 (23 ms)
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/internal/NOTES new/Test-Inter-1.06/internal/NOTES
--- old/Test-Inter-1.05/internal/NOTES 1970-01-01 01:00:00.000000000 +0100
+++ new/Test-Inter-1.06/internal/NOTES 2014-09-10 17:07:20.000000000 +0200
@@ -0,0 +1,9 @@
+#########################################################################
+Before every release, spellcheck the documents:
+
+ for i in `find lib -type f -name \*.pod` ;do
+ podspell $i > $i.txt
+ ispell -p internal/ispell.isp $i.txt
+ rm -f $i.txt $i.txt.bak
+ done
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/internal/TODO new/Test-Inter-1.06/internal/TODO
--- old/Test-Inter-1.05/internal/TODO 1970-01-01 01:00:00.000000000 +0100
+++ new/Test-Inter-1.06/internal/TODO 2014-09-10 17:07:20.000000000 +0200
@@ -0,0 +1,69 @@
+Consider adding the following from Test::More
+
+ note
+ explain
+ can_ok
+ isa_ok
+ subtest
+ cmp_ok
+
+ like
+ unlike
+ handles strings match regexps
+ lists contain certain element
+ hashes contain certain keys
+
+Add support for input files
+
+Look at:
+ Test::Group
+ Test::Slow
+to see if there's anything I want to add.
+
+Look at using Data::PrettyPrintObjects to print out the results.
+
+Add support for timing tests:
+
+ ok 1 (12 ms)
+ ok 2 (23 ms)
+
+=========================================================================
+OLD STUFF
+
+# Add a variable TI_TODO
+# if '' (default) pass even if TODO tests fail
+# if 'warn', pass but warn about TODO tests
+# if 'fail', fail if TODO tests fail
+
+# Add functions:
+# like, unlike
+# cmp_ok
+# can_ok
+# isa_ok
+# new_ok
+# subtest
+# pass, fail
+# is_deeply
+# explain
+
+# Conditional tests
+# skip(N) skip next N (defaults to 1) tests
+# todo_skip
+
+# ARGS => VALS
+# true if returned values are itentical to VALS
+# ARGS =>OP VALS
+# =>is
+# =>isnt
+# =>like
+# =>unlike
+# =>cmp(NOP)
+# NOP : < > <= >= !=
+# =>cmp(N,M)
+# true if VAL > N and VAL < M
+# =>cmp[N,M]
+# true if VAL >= N and VAL <= M
+# =>cmp(N,M]
+# =>cmp[N,M)
+# =>member
+# true if the return value is any of the VALS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/internal/build.yaml new/Test-Inter-1.06/internal/build.yaml
--- old/Test-Inter-1.05/internal/build.yaml 2013-03-20 13:44:52.000000000 +0100
+++ new/Test-Inter-1.06/internal/build.yaml 2014-09-10 15:46:29.000000000 +0200
@@ -2,3 +2,4 @@
script:
examples: 0
+git: 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/internal/ispell.isp new/Test-Inter-1.06/internal/ispell.isp
--- old/Test-Inter-1.05/internal/ispell.isp 1970-01-01 01:00:00.000000000 +0100
+++ new/Test-Inter-1.06/internal/ispell.isp 2014-09-10 17:07:20.000000000 +0200
@@ -0,0 +1,11 @@
+CPAN
+diag
+hashrefs
+isnt
+listref
+listrefs
+ok
+paren
+testdir
+testnum
+todo
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/lib/Test/Inter.pm new/Test-Inter-1.06/lib/Test/Inter.pm
--- old/Test-Inter-1.05/lib/Test/Inter.pm 2013-03-18 14:40:18.000000000 +0100
+++ new/Test-Inter-1.06/lib/Test/Inter.pm 2014-09-10 17:07:20.000000000 +0200
@@ -1,5 +1,5 @@
package Test::Inter;
-# Copyright (c) 2010-2011 Sullivan Beck. All rights reserved.
+# Copyright (c) 2010-2014 Sullivan Beck. All rights reserved.
# This program is free software; you can redistribute it and/or modify it
# under the same terms as Perl itself.
@@ -13,7 +13,7 @@
use IO::File;
our($VERSION);
-$VERSION = '1.05';
+$VERSION = '1.06';
###############################################################################
# BASE METHODS
@@ -857,7 +857,14 @@
# Output file and directory
- $outputdir = $testdir if (! $outputdir);
+ if (! $outputdir) {
+ if (-d $testdir &&
+ -w $testdir) {
+ $outputdir = $testdir;
+ } else {
+ $outputdir = ".";
+ }
+ }
if ($outputdir) {
if (! -d $outputdir ||
! -w $outputdir) {
@@ -901,7 +908,7 @@
my @exp = <$in>;
$in->close();
chomp(@exp);
- unlink($output);
+ unlink($output) if (! $ENV{'TI_NOCLEAN'});
while (@out < @exp) {
push(@out,'');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/lib/Test/Inter.pod new/Test-Inter-1.06/lib/Test/Inter.pod
--- old/Test-Inter-1.05/lib/Test/Inter.pod 2013-03-07 14:03:42.000000000 +0100
+++ new/Test-Inter-1.06/lib/Test/Inter.pod 2014-09-10 17:07:20.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright (c) 2010-2011 Sullivan Beck. All rights reserved.
+# Copyright (c) 2010-2014 Sullivan Beck. All rights reserved.
# This program is free software; you can redistribute it and/or modify it
# under the same terms as Perl itself.
@@ -10,9 +10,9 @@
=head1 DESCRIPTION
-This is another framework for writing test scripts. It is loosely
-inspired by Test::More, and has most of it's functionality, but it is
-not a drop-in replacement.
+This is another framework for writing test scripts. Some of the syntax
+is loosely inspired by Test::More, and has most of it's functionality,
+but it is not a drop-in replacement.
Test::More (and other existing test frameworks) suffer from two
weaknesses, both of which have prevented me from ever using them:
@@ -36,7 +36,7 @@
Since I use test scripts in two ways (part of a standard test suite
and to run the scripts in some interactive way to debug problems),
-I want to be able to do the follwing trivially:
+I want to be able to do the following trivially:
=over 4
@@ -67,36 +67,43 @@
=back
The other feature that I wanted in a test suite is the ability to
-define the tests in a readable format. In almost every case, it
-is best to think of a test script as consisting of two separate
-parts: a script part, and a test part, and the more you can
-keep the two separate, the better.
+define the tests in a format that is natural and readable FOR THE
+TESTS. In almost every case, it is best to think of a test script
+as consisting of two separate parts: a script part, and a test part.
The script part of a test script is the least important part! It's
-usually fairly trivial, rarely needs to be changed, and is quite
-simply not the focus of the test script.
+usually fairly trivial, rarely needs to be changed, and is not the
+focus of the test script.
The tests part of the script IS the important part, and these should
-be expressed in a form that is easy to maintain, easy to read, and
-easy to modify, and none of these should involve modifying the
-script portion of the test script in general. As a general rule,
-if the script portion of the test script obscures the tests in any
-way, it's not written correctly!
-
-Compare this to any other systems where you are mixing two
-"languages". For example, a PHP script where you have a mixture of PHP
-and HTML or a templating system consisting of text and template
-commands. The more the two languages are interwoven, the less readable
-both are, and the harder it is to maintain.
+be expressed in a form that is natural to them, easy to maintain, easy
+to read, and easy to modify, and none of these should involve
+modifying the script portion of the test script in general. Because
+the content of the tests is the important part of the script, the
+emphasis should be in making them more readable, even at the expense
+of the script portion. As a general rule, if the script portion of
+the test script obscures the tests in any way, it's not written
+correctly!
+
+The solution to this is well understood, and is common to many other
+systems where you are mixing two "languages". The task of correctly
+specifying both the tests and the test script is virtually identical
+to the task of creating a PHP script which consists of a mixture of
+PHP and HTML, or the task of creating a template file using some
+templating system where the file consists of a mixture of text to be
+displayed and templating commands. It is well understood in each of
+these cases that the more the two "languages" are interwoven, the less
+readable both are, and the harder it is to maintain. The more you are
+able to separate the two, the easier both are to read and maintain.
As often as possible, I want the tests to be written in some sort of
text format which can be easily read as a table with no perl commands
-interspersed. I want to the freedom to define the tests in one big
-string (perhaps a DATA section, or even in a separate file) which is
+interspersed. I want to the freedom to define the tests in one section
+(a long string, the DATA section, or even in a separate file) which is
easily readable. This may introduce the necessity of parsing it, but
it makes it significantly easier to maintain the tests.
-This flexibilty makes it much easier to read the tests (as opposed to
+This flexibility makes it much easier to read the tests (as opposed to
the script) which is the fundamental content of a test script.
To illustrate some of this, in Test::More, a series of tests might be
@@ -121,16 +128,17 @@
=item B<Debugging the script is tedious>
-To debug the 3rd test, you have to open up the file and get the line number
-of the 3rd test. You set a breakpoint there and then you can run the script.
+Say you ran the test suite, and test 3 failed. To debug it using a traditional
+Test::* module, you have to open up the test script, find the 3rd test (which
+won't necessarily be trivial, especially if you're talking about the 103rd test),
+and then run the debugger setting a break point at that line number.
+
+This sequence of steps is typically not very hard (especially when the
+test script is as simple as the example above), but it's still lots of
+steps that serve only to break your train of thought.
-It's typically not very hard to do this, but if you have to check out the line
-number every time you want to visit a test, it can break your chain of
-thought.
-
-How much better to be able to say:
-
- break func ($::TI_NUM==3)
+How much better to be able to set a break point in the function that actually
+performs the test for the Nth test.
It would also be nice to be able to skip the first two tests... perhaps
they take a long time to run, and I want to get right to work on test 3.
@@ -142,13 +150,14 @@
there is too much perl code among them, and virtually impossible to
look at them as a whole.
-It is true that looking at this as a perl script, it is very
-simple... but the script ISN'T the content you're interested in. The
+It is true that looking at this particular example, it is very
+simple... but the script ISN'T the content you're interested in (and
+bear in mind that many test scripts are nowhere near this simple). The
REAL content of this script are the tests, which consist of the
function arguments and the expected result. Although it's not
impossible to see each of these in the script above, it's not in a
format that is conducive to studying the tests, and especially not for
-examing the list of tests as a whole.
+examining the list of tests as a whole.
=back
@@ -172,13 +181,14 @@
This module supports a number of methods for defining tests, so you
can use whichever one is most convenient (including methods that are
-identical to Test::More).
+identical to Test::More if that really is the best method).
In addition, the following debugger command works as desired:
b func ($::TI_NUM==3)
-and you're ready to debug.
+and you're ready to debug (assuming that the test function is named
+'func').
=head1 CREATING A TEST
@@ -253,7 +263,7 @@
environment variable (which overrides any value passed to the
new method). Third, you can set a global variable (which overrides
both the environment variable and options passed to the new method).
-Fouth, you can call the appropriate method to set the option. This
+Forth, you can call the appropriate method to set the option. This
overrides all other methods.
Each of the allowed options are described below in the following base
@@ -309,7 +319,7 @@
method below), nothing is printed out for these tests. Otherwise, a
skip message is printed out.
-If no value is given, it defaults to 0 (which means that all reamining
+If no value is given, it defaults to 0 (which means that all remaining
tests are run).
=item B<testnum>
@@ -331,7 +341,7 @@
$o->done_testing($n);
The TAP API (the 'language' used to run a sequence of tests and see
-which ones failed and which ones passedd) requires a statement of the
+which ones failed and which ones passed) requires a statement of the
number of tests that are expected to run.
This statement can appear at the start of the test suite, or at
@@ -359,7 +369,7 @@
It is NOT strictly required to set a plan if the script is only run
interactively, so if for some reason this module is used for test
-scritps which are not part of a standard perl test suite, the plan
+scripts which are not part of a standard perl test suite, the plan
and done_testing statements are optional. As a matter of fact, the
script will run just fine without them... but a perl installer will
report a failure in the test suite.
@@ -527,7 +537,7 @@
This is used to load a module using the perl 'require' function. If
$mode is not passed in, the default mode (required) is used to test
-the existance of the module.
+the existence of the module.
If $mode is passed in, it must be either the string 'forbid' or
'feature'.
@@ -633,12 +643,12 @@
$o->is(TESTS);
$o->isnt(TESTS);
-A test run with is looks as a result and tests to see if it is identical to
+A test run with B<is> looks at a result and tests to see if it is identical to
an expected result. If it is, the test passes. Otherwise it fails. In the
case of a failure, a diagnostic message will show what result was actually
obtained and what was expected.
-A test run with isnt looks at a result and tests to see if the result obtained
+A test run with B<isnt> looks at a result and tests to see if the result obtained
is different than an expected result. If it is different, the test passes.
Otherwise it fails.
@@ -653,7 +663,7 @@
$o->is(\&func,\@args,$expected);
$o->is(\&func,\@args,$expected,$name);
-The isnt method can be called in exactly the same way.
+The B<isnt> method can be called in exactly the same way.
As with the ok method, the result can be a scalar, hashref, or listref. If it is
a hashref or listref, the entire structure must match the expected value.
@@ -669,31 +679,40 @@
$o->file($func,$input,$outputdir,$expected,$name [,@args]);
Sometimes it may be easiest to store the input, output, and expected
-output from a series of tests in files. In this case, each line of
+output from a test in a text file. In this case, each line of
output will be treated as a single test, so the output and expected
output must match up exactly.
$func is a reference to a function which will produce a temporary
-output file. If $input is specified, it is the name of the input
-file, and it will be passed to the function as the first argument.
-If $input is left blank, no input file will be used. The input
-file may be specified as a full path, or just the file name (in
-which case it will be looked for in the test directory and the
-current directory).
+output file.
+
+If $input is specified, it is the name of the input file. If it is
+empty, no input file will be used. The input file can be fully specified,
+or it can be relative to the test directory.
-$func also takes a arequired argument which is the output file.
-The tests method will create a tempoary file containing the output.
If $outputdir is passed in, it is the directory where the output
-file will be written. If $outputdir is left blank, the temporary
+file will be written. It can be fully specified, or relative to the
+test directory. If $outputdir is left blank, the temporary
file will be written to the test directory.
-If @args is passed in, it is a list of additional arguments which
-will be passed to $func.
-
-$expected is the name of a file which contains the expeccted output.
+$expected is the name of a file which contains the expected output.
It can be fully specified, or it will be checked for in the test
directory.
+$name is the name of this series of tests.
+
+@args are extra arguments to pass to the test function.
+
+The function will be called with the arguments:
+
+ &$func( [$input,] $output,@args);
+
+$input is only passed in if it was passed in to this method. If no
+input file is specified, nothing will be passed to the function.
+
+$output is the name of a temporary file where the output will
+be written to.
+
=back
=head1 USING THE TESTS METHOD
@@ -959,7 +978,7 @@
The test may be split across any number of lines, provided there is
not a completely blank line (which signals the end of the test), so
-the following are eqivalent:
+the following are equivalent:
tests => "a b c",
tests => "a b
@@ -1112,6 +1131,11 @@
The width of the terminal.
+=item TI_NOCLEAN
+
+When running a file test, the temporary output file will not be removed
+if this is set.
+
=back
=head1 HISTORY
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/t/pod.t new/Test-Inter-1.06/t/pod.t
--- old/Test-Inter-1.05/t/pod.t 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/t/pod.t 2015-02-11 14:58:34.000000000 +0100
@@ -1,11 +1,66 @@
#!/usr/bin/perl
-use Test::Inter;
-my $t = new Test::Inter;
+#
+# Test that the syntax of our POD documentation is valid.
+#
+
+use strict;
+use Test::More;
+
+# Don't run tests for installs
+unless ( $ENV{RELEASE_TESTING} ) {
+ plan( skip_all => "Author tests not required for installation" );
+}
eval "use Test::Pod 1.00";
-$t->feature('Test::Pod',1) unless ($@);
-$t->feature('DoPOD',1) unless ($ENV{'TI_SKIPPOD'});
+plan skip_all => "Test::Pod 1.00 required for testing POD" if $@;
+
+eval "use File::Basename";
+plan skip_all => "File::Basename required for testing POD" if $@;
+
+# If there is a file pod.ign, it should be a list of filename
+# substrings to ignore (any file with any of these substrings
+# will be ignored).
+
+# Find the pod.ign file
+
+my($testdir);
+if (-f "$0") {
+ my $COM = $0;
+ $testdir = dirname($COM);
+ $testdir = '.' if (! $testdir);
+} elsif (-d 't') {
+ $testdir = 't';
+} else {
+ $testdir = '.';
+}
+
+my @ign = ();
+if (-f "$testdir/pod.ign") {
+ open(IN,"$testdir/pod.ign");
+ @ign = <IN>;
+ close(IN);
+ chomp(@ign);
+}
+
+chdir("..") if ($testdir eq '.');
+
+if (@ign) {
+
+ my @file = all_pod_files();
+
+ FILE:
+ foreach my $file (@file) {
+ foreach my $ign (@ign) {
+ next FILE if ($file =~ /\Q$ign\E/);
+ }
+ pod_file_ok($file);
+ }
+ done_testing();
+
+} else {
+ all_pod_files_ok();
+}
+
+
-$t->skip_all('','Test::Pod','DoPOD');
-all_pod_files_ok();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/t/pod_coverage.t new/Test-Inter-1.06/t/pod_coverage.t
--- old/Test-Inter-1.05/t/pod_coverage.t 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/t/pod_coverage.t 2015-02-11 14:58:34.000000000 +0100
@@ -1,11 +1,65 @@
#!/usr/bin/perl
-use Test::Inter;
-my $t = new Test::Inter;
+#
+# Test that the POD documentation is complete.
+#
+
+use strict;
+use Test::More;
+
+# Don't run tests for installs
+unless ( $ENV{RELEASE_TESTING} ) {
+ plan( skip_all => "Author tests not required for installation" );
+}
eval "use Test::Pod::Coverage 1.00";
-$t->feature('Test::Pod::Coverage',1) unless ($@);
-$t->feature('DoPOD',1) unless ($ENV{'TI_SKIPPOD'});
+plan skip_all => "Test::Pod::Coverage 1.00 required for testing POD coverage"
+ if $@;
+
+eval "use File::Basename";
+plan skip_all => "File::Basename required for testing POD coverage"
+ if $@;
+
+# If there is a file pod_coverage.ign, it should be a list of module
+# name substrings to ignore (any module with any of these substrings
+# will be ignored).
+
+# Find the pod_coverage.ign file
+
+my($testdir);
+if (-f "$0") {
+ my $COM = $0;
+ $testdir = dirname($COM);
+ $testdir = '.' if (! $testdir);
+} elsif (-d 't') {
+ $testdir = 't';
+} else {
+ $testdir = '.';
+}
+
+my @ign = ();
+if (-f "$testdir/pod_coverage.ign") {
+ open(IN,"$testdir/pod_coverage.ign");
+ @ign = <IN>;
+ close(IN);
+ chomp(@ign);
+}
+
+chdir("..") if ($testdir eq '.');
+
+if (@ign) {
+
+ my @mod = all_modules();
+
+ MOD:
+ foreach my $mod (@mod) {
+ foreach my $ign (@ign) {
+ next MOD if ($mod =~ /\Q$ign\E/);
+ }
+ pod_coverage_ok($mod);
+ }
+ done_testing();
-$t->skip_all('','Test::Pod::Coverage','DoPOD');
-all_pod_coverage_ok();
+} else {
+ all_pod_coverage_ok();
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Inter-1.05/t/runtests new/Test-Inter-1.06/t/runtests
--- old/Test-Inter-1.05/t/runtests 2013-03-20 13:47:38.000000000 +0100
+++ new/Test-Inter-1.06/t/runtests 2015-02-11 14:58:34.000000000 +0100
@@ -11,8 +11,10 @@
TI_QUIET=2
export TI_QUIET
-TI_SKIPPOD=1
-export TI_SKIPPOD
+if [ "$RELEASE_TESTING" != "0" ]; then
+ RELEASE_TESTING=1
+ export RELEASE_TESTING
+fi
if [ "$1" = "-T" ]; then
taint="-T -I../lib -I."
++++++ cpanspec.yml ++++++
---
description_paragraphs: 5
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: -
#./Build build flags=%{?_smp_mflags} --myflag