Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Test-Script for
openSUSE:Factory checked in at 2021-05-17 18:45:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test-Script (Old)
and /work/SRC/openSUSE:Factory/.perl-Test-Script.new.2988 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Test-Script"
Mon May 17 18:45:18 2021 rev:30 rq:893687 version:1.29
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Test-Script/perl-Test-Script.changes
2021-02-18 20:53:09.847481818 +0100
+++
/work/SRC/openSUSE:Factory/.perl-Test-Script.new.2988/perl-Test-Script.changes
2021-05-17 18:45:46.096508145 +0200
@@ -1,0 +2,12 @@
+Fri May 14 03:10:03 UTC 2021 - Tina M??ller <[email protected]>
+
+- updated to 1.29
+ see /usr/share/doc/packages/perl-Test-Script/Changes
+
+ 1.29 2021-05-13 09:17:30 -0600
+ - Production release identical to 1.28_01 release.
+
+ 1.28_01 2021-05-10 10:12:22 -0600
+ - Added script_fails and program_fails functions (brainbuz++ gh#34, gh#38)
+
+-------------------------------------------------------------------
Old:
----
Test-Script-1.27.tar.gz
New:
----
Test-Script-1.29.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Test-Script.spec ++++++
--- /var/tmp/diff_new_pack.icIbGH/_old 2021-05-17 18:45:46.660505752 +0200
+++ /var/tmp/diff_new_pack.icIbGH/_new 2021-05-17 18:45:46.664505735 +0200
@@ -18,7 +18,7 @@
%define cpan_name Test-Script
Name: perl-Test-Script
-Version: 1.27
+Version: 1.29
Release: 0
Summary: Basic cross-platform tests for scripts
License: Artistic-1.0 OR GPL-1.0-or-later
++++++ Test-Script-1.27.tar.gz -> Test-Script-1.29.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/Changes new/Test-Script-1.29/Changes
--- old/Test-Script-1.27/Changes 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/Changes 2021-05-13 17:17:32.000000000 +0200
@@ -1,5 +1,11 @@
Revision history for Perl extension Test-Script
+1.29 2021-05-13 09:17:30 -0600
+ - Production release identical to 1.28_01 release.
+
+1.28_01 2021-05-10 10:12:22 -0600
+ - Added script_fails and program_fails functions (brainbuz++ gh#34, gh#38)
+
1.27 2021-02-17 13:15:57 -0700
- Documentation improvements (RRWO++ gh#31, gh#30)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/LICENSE new/Test-Script-1.29/LICENSE
--- old/Test-Script-1.27/LICENSE 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/LICENSE 2021-05-13 17:17:32.000000000 +0200
@@ -1,4 +1,4 @@
-This software is copyright (c) 2019 by Adam Kennedy.
+This software is copyright (c) 2006-2021 by Adam Kennedy.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
@@ -12,7 +12,7 @@
--- The GNU General Public License, Version 1, February 1989 ---
-This software is Copyright (c) 2019 by Adam Kennedy.
+This software is Copyright (c) 2006-2021 by Adam Kennedy.
This is free software, licensed under:
@@ -272,7 +272,7 @@
--- The Artistic License 1.0 ---
-This software is Copyright (c) 2019 by Adam Kennedy.
+This software is Copyright (c) 2006-2021 by Adam Kennedy.
This is free software, licensed under:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/MANIFEST
new/Test-Script-1.29/MANIFEST
--- old/Test-Script-1.27/MANIFEST 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/MANIFEST 2021-05-13 17:17:32.000000000 +0200
@@ -15,6 +15,7 @@
t/bin/bad.pl
t/bin/four.pl
t/bin/good.pl
+t/bin/liveordie.pl
t/bin/print.pl
t/bin/signal.pl
t/bin/stdin.pl
@@ -23,6 +24,7 @@
t/bin/warnon.pl
t/bug_gh9.t
t/test_script__exports.t
+t/test_script__fails.t
t/test_script__import.t
t/test_script__program_runs.t
t/test_script__program_stderr.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/META.json
new/Test-Script-1.29/META.json
--- old/Test-Script-1.27/META.json 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/META.json 2021-05-13 17:17:32.000000000 +0200
@@ -56,30 +56,31 @@
"provides" : {
"Test::Script" : {
"file" : "lib/Test/Script.pm",
- "version" : "1.27"
+ "version" : "1.29"
}
},
"release_status" : "stable",
"resources" : {
"bugtracker" : {
- "web" : "https://github.com/plicease/Test-Script/issues"
+ "web" : "https://github.com/uperl/Test-Script/issues"
},
"homepage" : "https://metacpan.org/pod/Test::Script",
"repository" : {
"type" : "git",
- "url" : "git://github.com/plicease/Test-Script.git",
- "web" : "https://github.com/plicease/Test-Script"
+ "url" : "git://github.com/uperl/Test-Script.git",
+ "web" : "https://github.com/uperl/Test-Script"
}
},
- "version" : "1.27",
+ "version" : "1.29",
"x_contributors" : [
"Adam Kennedy",
"Graham Ollis <[email protected]>",
"Brendan Byrd",
- "Chris White <[email protected]>"
+ "Chris White <[email protected]>",
+ "John Karr (BRAINBUZ)"
],
- "x_generated_by_perl" : "v5.33.6",
- "x_serialization_backend" : "Cpanel::JSON::XS version 4.25",
+ "x_generated_by_perl" : "v5.33.9",
+ "x_serialization_backend" : "Cpanel::JSON::XS version 4.26",
"x_spdx_expression" : "Artistic-1.0-Perl OR GPL-1.0-or-later",
"x_use_unsafe_inc" : 0
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/META.yml
new/Test-Script-1.29/META.yml
--- old/Test-Script-1.27/META.yml 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/META.yml 2021-05-13 17:17:32.000000000 +0200
@@ -19,7 +19,7 @@
provides:
Test::Script:
file: lib/Test/Script.pm
- version: '1.27'
+ version: '1.29'
requires:
Capture::Tiny: '0'
File::Spec: '0.80'
@@ -29,16 +29,17 @@
Text::ParseWords: '0'
perl: '5.008001'
resources:
- bugtracker: https://github.com/plicease/Test-Script/issues
+ bugtracker: https://github.com/uperl/Test-Script/issues
homepage: https://metacpan.org/pod/Test::Script
- repository: git://github.com/plicease/Test-Script.git
-version: '1.27'
+ repository: git://github.com/uperl/Test-Script.git
+version: '1.29'
x_contributors:
- 'Adam Kennedy'
- 'Graham Ollis <[email protected]>'
- 'Brendan Byrd'
- 'Chris White <[email protected]>'
-x_generated_by_perl: v5.33.6
+ - 'John Karr (BRAINBUZ)'
+x_generated_by_perl: v5.33.9
x_serialization_backend: 'YAML::Tiny version 1.73'
x_spdx_expression: 'Artistic-1.0-Perl OR GPL-1.0-or-later'
x_use_unsafe_inc: 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/Makefile.PL
new/Test-Script-1.29/Makefile.PL
--- old/Test-Script-1.27/Makefile.PL 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/Makefile.PL 2021-05-13 17:17:32.000000000 +0200
@@ -5,7 +5,7 @@
exit;
}
}
-# This file was automatically generated by
Dist::Zilla::Plugin::Author::Plicease::MakeMaker v2.59.
+# This file was automatically generated by
Dist::Zilla::Plugin::Author::Plicease::MakeMaker v2.63.
use strict;
use warnings;
use 5.008001;
@@ -35,7 +35,7 @@
"TEST_REQUIRES" => {
"Test2::V0" => "0.000060"
},
- "VERSION" => "1.27",
+ "VERSION" => "1.29",
"test" => {
"TESTS" => "t/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/README new/Test-Script-1.29/README
--- old/Test-Script-1.27/README 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/README 2021-05-13 17:17:32.000000000 +0200
@@ -4,7 +4,7 @@
VERSION
- version 1.27
+ version 1.29
SYNOPSIS
@@ -46,6 +46,8 @@
script_compiles
+ [version 1.05]
+
script_compiles( $script, $test_name );
The "script_compiles" test calls the script with "perl -c script.pl",
@@ -59,10 +61,10 @@
is running the test script (and not with the default system perl). This
will also be shown in the diagnostic output on failure.
- This function was added in version 1.05.
-
script_runs
+ [version 1.05]
+
script_runs( $script, $test_name );
script_runs( \@script_and_arguments, $test_name );
script_runs( $script, \%options, $test_name );
@@ -79,7 +81,7 @@
test script (and not with the default system perl). This will also be
shown in the diagnostic output on failure.
- This function was added in version 1.05.
+ [version 1.09]
You may pass in options as a hash as the second argument (as of version
1.09).
@@ -91,12 +93,12 @@
interpreter_options
+ [version 1.25]
+
Array reference of Perl options to be passed to the interpreter.
Things like -w or -x can be passed this way. This may be either a
single string or an array reference.
- This option was added in version 1.25.
-
signal
The expected signal. The default is 0. Use with care! This may not be
@@ -142,80 +144,96 @@
Same as stdout above, except for stderr.
+ script_fails
+
+ [ version 1.28 ]
+
+ script_fails $script, { exit => $expected_exit }, $test_name );
+ script_fails $script, \%options, $test_name;
+
+ "script_runs" may be invoked as "script_fails". The exit option is
+ mandatory when used this way. Since Perl 5.12, die usually returns 255,
+ but does not promise to do so. Fatal errors like divide by 0 also
+ return 255 often so it is not the best error code for a trapped
+ exception. script_runs needs an exit code it considers success, use
+ warn; exit; instead of die.
+
script_stdout_is
+ [version 1.09]
+
script_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous "script_runs" matches
the expected value exactly.
- This function was added in version 1.09.
-
script_stdout_isnt
+ [version 1.09]
+
script_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous "script_runs" does NOT
match the expected value exactly.
- This function was added in version 1.09.
-
script_stdout_like
+ [version 1.09]
+
script_stdout_like $regex, $test_name;
Tests if the output to stdout from the previous "script_runs" matches
the regular expression.
- This function was added in version 1.09.
-
script_stdout_unlike
+ [version 1.09]
+
script_stdout_unlike $regex, $test_name;
Tests if the output to stdout from the previous "script_runs" does NOT
match the regular expression.
- This function was added in version 1.09.
-
script_stderr_is
+ [version 1.09]
+
script_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous "script_runs" matches
the expected value exactly.
- This function was added in version 1.09.
-
script_stderr_isnt
+ [version 1.09]
+
script_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous "script_runs" does NOT
match the expected value exactly.
- This function was added in version 1.09.
-
script_stderr_like
+ [version 1.09]
+
script_stderr_like $regex, $test_name;
Tests if the output to stderr from the previous "script_runs" matches
the regular expression.
- This function was added in version 1.09.
-
script_stderr_unlike
+ [version 1.09]
+
script_stderr_unlike $regex, $test_name;
Tests if the output to stderr from the previous "script_runs" does NOT
match the regular expression.
- This function was added in version 1.09.
-
program_runs
+ [version 1.26]
+
program_runs( $program, $test_name );
program_runs( \@program_and_arguments, $test_name );
program_runs( $program, \%options, $test_name );
@@ -233,10 +251,20 @@
See File::Spec or Path::Class for routines useful in building pathnames
in a cross-platform way.
- This function was added in version 1.26.
+ program_fails
+
+ [ version 1.28 ]
+
+ program_fails $program, { exit => $expected_exit }, $test_name;
+ program_fails $program, \%options, $test_name;
+
+ "program_runs" may be invoked as "program_fails". "program_fails" needs
+ to know the expected exit value, so exit becomes a required option.
program_stdout_is
+ [version 1.26]
+
program_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous "program_runs" matches
@@ -244,6 +272,8 @@
program_stdout_isnt
+ [version 1.26]
+
program_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous "program_runs" does NOT
@@ -251,6 +281,8 @@
program_stdout_like
+ [version 1.26]
+
program_stdout_like $regex, $test_name;
Tests if the output to stdout from the previous "program_runs" matches
@@ -258,6 +290,8 @@
program_stdout_unlike
+ [version 1.26]
+
program_stdout_unlike $regex, $test_name;
Tests if the output to stdout from the previous "program_runs" does NOT
@@ -265,6 +299,8 @@
program_stderr_is
+ [version 1.26]
+
program_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous "program_runs" matches
@@ -272,6 +308,8 @@
program_stderr_isnt
+ [version 1.26]
+
program_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous "program_runs" does NOT
@@ -279,6 +317,8 @@
program_stderr_like
+ [version 1.26]
+
program_stderr_like $regex, $test_name;
Tests if the output to stderr from the previous "program_runs" matches
@@ -286,6 +326,8 @@
program_stderr_unlike
+ [version 1.26]
+
program_stderr_unlike $regex, $test_name;
Tests if the output to stderr from the previous "program_runs" does NOT
@@ -317,9 +359,11 @@
Chris White <[email protected]>
+ John Karr (BRAINBUZ)
+
COPYRIGHT AND LICENSE
- This software is copyright (c) 2019 by Adam Kennedy.
+ This software is copyright (c) 2006-2021 by Adam Kennedy.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/author.yml
new/Test-Script-1.29/author.yml
--- old/Test-Script-1.27/author.yml 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/author.yml 2021-05-13 17:17:32.000000000 +0200
@@ -6,6 +6,8 @@
stopwords:
# australian spelling.
- localised
+ - BRAINBUZ
+ - Karr
pod_coverage:
skip: 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/dist.ini
new/Test-Script-1.29/dist.ini
--- old/Test-Script-1.27/dist.ini 2021-02-17 21:16:00.000000000 +0100
+++ new/Test-Script-1.29/dist.ini 2021-05-13 17:17:32.000000000 +0200
@@ -3,17 +3,20 @@
author = Adam Kennedy
license = Perl_5
copyright_holder = Adam Kennedy
-copyright_year = 2019
-version = 1.27
+copyright_year = 2006-2021
+version = 1.29
[@Author::Plicease]
-:version = 2.44
-travis_status = 1
-release_tests = 1
-test2_v0 = 1
-travis_com = 1
-workflow = windows
-workflow = macos
+:version = 2.61
+release_tests = 1
+test2_v0 = 1
+github_user = uperl
+
+workflow = linux
+workflow = macos
+workflow = windows
+workflow = cygwin
+workflow = msys2-mingw
[RemovePrereqs]
remove = strict
@@ -46,6 +49,7 @@
original = Adam Kennedy
contributor = Brendan Byrd
contributor = Chris White <[email protected]>
+contributor = John Karr (BRAINBUZ)
[PruneFiles]
filename = xt/release/changes.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/lib/Test/Script.pm
new/Test-Script-1.29/lib/Test/Script.pm
--- old/Test-Script-1.27/lib/Test/Script.pm 2021-02-17 21:16:00.000000000
+0100
+++ new/Test-Script-1.29/lib/Test/Script.pm 2021-05-13 17:17:32.000000000
+0200
@@ -1,7 +1,7 @@
package Test::Script;
# ABSTRACT: Basic cross-platform tests for scripts
-our $VERSION = '1.27'; # VERSION
+our $VERSION = '1.29'; # VERSION
use 5.008001;
@@ -21,6 +21,7 @@
our @EXPORT = qw{
script_compiles
script_compiles_ok
+ script_fails
script_runs
script_stdout_is
script_stdout_isnt
@@ -30,6 +31,7 @@
script_stderr_isnt
script_stderr_like
script_stderr_unlike
+ program_fails
program_runs
program_stdout_is
program_stdout_isnt
@@ -167,6 +169,17 @@
goto &_run;
}
+
+sub script_fails {
+ my $args = _script(shift);
+ my ( $opt, $testname ) = @_;
+ $testname = "Script $args->[0] fails" unless defined $testname;
+ die "exit is a mandatory option for script_fails"
+ unless eval{ defined $opt->{exit} };
+ my $ctx = context();
+ return release $ctx, script_runs( $args, $opt, $testname );
+}
+
# Run a script or program and provide test events corresponding to the results.
# Call as _run(\@cmd, \%opt, "Test description")
sub _run {
@@ -325,6 +338,17 @@
}
+sub program_fails {
+ my $cmd = _script(shift);
+ my ( $opt, $testname ) = @_;
+ $testname = 'program_fails' unless defined $testname;
+ die "exit is a mandatory option for program_fails"
+ unless eval{ defined $opt->{exit} };
+ my $ctx = context();
+ return release $ctx, program_runs( $cmd, $opt, $testname );
+}
+
+
sub program_stdout_is
{
my($pattern, $name) = @_;
@@ -480,7 +504,7 @@
=head1 VERSION
-version 1.27
+version 1.29
=head1 SYNOPSIS
@@ -521,6 +545,8 @@
=head2 script_compiles
+[version 1.05]
+
script_compiles( $script, $test_name );
The L</script_compiles> test calls the script with "perl -c script.pl",
@@ -534,10 +560,10 @@
is running the test script (and not with the default system perl). This
will also be shown in the diagnostic output on failure.
-This function was added in version 1.05.
-
=head2 script_runs
+[version 1.05]
+
script_runs( $script, $test_name );
script_runs( \@script_and_arguments, $test_name );
script_runs( $script, \%options, $test_name );
@@ -554,7 +580,7 @@
test script (and not with the default system perl). This will also be shown
in the diagnostic output on failure.
-This function was added in version 1.05.
+[version 1.09]
You may pass in options as a hash as the second argument (as of version 1.09).
@@ -567,12 +593,12 @@
=item interpreter_options
+[version 1.25]
+
Array reference of Perl options to be passed to the interpreter. Things
like C<-w> or C<-x> can be passed this way. This may be either a single
string or an array reference.
-This option was added in version 1.25.
-
=item signal
The expected signal. The default is 0. Use with care! This may not be
@@ -625,80 +651,96 @@
=back
+=head2 script_fails
+
+[ version 1.28 ]
+
+ script_fails $script, { exit => $expected_exit }, $test_name );
+ script_fails $script, \%options, $test_name;
+
+L</script_runs> may be invoked as L</script_fails>. The exit option is
+mandatory when used this way. Since Perl 5.12, C<die> usually returns 255,
+but does not promise to do so. Fatal errors like divide by 0 also return
+255 often so it is not the best error code for a trapped exception.
+L<script_runs> needs an exit code it considers success, use C<warn; exit;>
+instead of die.
+
=head2 script_stdout_is
+[version 1.09]
+
script_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous L</script_runs> matches the
expected value exactly.
-This function was added in version 1.09.
-
=head2 script_stdout_isnt
+[version 1.09]
+
script_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous L</script_runs> does NOT match
the
expected value exactly.
-This function was added in version 1.09.
-
=head2 script_stdout_like
+[version 1.09]
+
script_stdout_like $regex, $test_name;
Tests if the output to stdout from the previous L</script_runs> matches the
regular
expression.
-This function was added in version 1.09.
-
=head2 script_stdout_unlike
+[version 1.09]
+
script_stdout_unlike $regex, $test_name;
Tests if the output to stdout from the previous L</script_runs> does NOT match
the regular
expression.
-This function was added in version 1.09.
-
=head2 script_stderr_is
+[version 1.09]
+
script_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous L</script_runs> matches the
expected value exactly.
-This function was added in version 1.09.
-
=head2 script_stderr_isnt
+[version 1.09]
+
script_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous L</script_runs> does NOT match
the
expected value exactly.
-This function was added in version 1.09.
-
=head2 script_stderr_like
+[version 1.09]
+
script_stderr_like $regex, $test_name;
Tests if the output to stderr from the previous L</script_runs> matches the
regular
expression.
-This function was added in version 1.09.
-
=head2 script_stderr_unlike
+[version 1.09]
+
script_stderr_unlike $regex, $test_name;
Tests if the output to stderr from the previous L</script_runs> does NOT match
the regular
expression.
-This function was added in version 1.09.
-
=head2 program_runs
+[version 1.26]
+
program_runs( $program, $test_name );
program_runs( \@program_and_arguments, $test_name );
program_runs( $program, \%options, $test_name );
@@ -724,10 +766,20 @@
See L<File::Spec> or L<Path::Class> for routines useful in building pathnames
in a cross-platform way.
-This function was added in version 1.26.
+=head2 program_fails
+
+[ version 1.28 ]
+
+ program_fails $program, { exit => $expected_exit }, $test_name;
+ program_fails $program, \%options, $test_name;
+
+L</program_runs> may be invoked as L</program_fails>. L</program_fails>
+needs to know the expected exit value, so exit becomes a required option.
=head2 program_stdout_is
+[version 1.26]
+
program_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous L</program_runs> matches the
@@ -735,6 +787,8 @@
=head2 program_stdout_isnt
+[version 1.26]
+
program_stdout_is $expected_stdout, $test_name;
Tests if the output to stdout from the previous L</program_runs> does NOT
match the
@@ -742,6 +796,8 @@
=head2 program_stdout_like
+[version 1.26]
+
program_stdout_like $regex, $test_name;
Tests if the output to stdout from the previous L</program_runs> matches the
regular
@@ -749,6 +805,8 @@
=head2 program_stdout_unlike
+[version 1.26]
+
program_stdout_unlike $regex, $test_name;
Tests if the output to stdout from the previous L</program_runs> does NOT
match the regular
@@ -756,6 +814,8 @@
=head2 program_stderr_is
+[version 1.26]
+
program_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous L</program_runs> matches the
@@ -763,6 +823,8 @@
=head2 program_stderr_isnt
+[version 1.26]
+
program_stderr_is $expected_stderr, $test_name;
Tests if the output to stderr from the previous L</program_runs> does NOT
match the
@@ -770,6 +832,8 @@
=head2 program_stderr_like
+[version 1.26]
+
program_stderr_like $regex, $test_name;
Tests if the output to stderr from the previous L</program_runs> matches the
regular
@@ -777,6 +841,8 @@
=head2 program_stderr_unlike
+[version 1.26]
+
program_stderr_unlike $regex, $test_name;
Tests if the output to stderr from the previous L</program_runs> does NOT
match the regular
@@ -807,9 +873,11 @@
Chris White E<lt>[email protected]<gt>
+John Karr (BRAINBUZ)
+
=head1 COPYRIGHT AND LICENSE
-This software is copyright (c) 2019 by Adam Kennedy.
+This software is copyright (c) 2006-2021 by Adam Kennedy.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/t/bin/liveordie.pl
new/Test-Script-1.29/t/bin/liveordie.pl
--- old/Test-Script-1.27/t/bin/liveordie.pl 1970-01-01 01:00:00.000000000
+0100
+++ new/Test-Script-1.29/t/bin/liveordie.pl 2021-05-13 17:17:32.000000000
+0200
@@ -0,0 +1,15 @@
+#!perl
+
+use strict;
+
+my ( $dothis, $code ) = @ARGV;
+
+if ( $dothis eq 'die' ) {
+ die 'Instructed to DIE!';
+} elsif ( $dothis eq 'fail' ) {
+ print STDERR "Exit: $code\n";
+ exit( $code );
+} else {
+ print STDOUT "I lived\n";
+ exit(0);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/t/test_script__fails.t
new/Test-Script-1.29/t/test_script__fails.t
--- old/Test-Script-1.27/t/test_script__fails.t 1970-01-01 01:00:00.000000000
+0100
+++ new/Test-Script-1.29/t/test_script__fails.t 2021-05-13 17:17:32.000000000
+0200
@@ -0,0 +1,87 @@
+use Test2::V0 -no_srand => 1;
+use Test::Script;
+use File::Temp qw( tempdir );
+use Data::Dumper qw( Dumper );
+use Probe::Perl;
+
+# Use the Perl interpreter as the program since it's the only one we know
+# exists. The files in t/bin do not use any modules, so we don't have
+# to worry about passing @INC down.
+my $perl = Probe::Perl->find_perl_interpreter() or die "Can't find perl";
+
+subtest 'script_fails' => sub {
+ my $rv;
+ my $events;
+
+ is(
+ $events = intercept {
+ $rv = script_fails( ['t/bin/liveordie.pl', 'fail', 111 ], { exit => 111
}) },
+ array {
+ event Ok => sub {
+ call pass => T();
+ call name => 'Script t/bin/liveordie.pl fails';
+ };
+ end;
+ },
+ 'script that failes with expected exit code passes .',
+ );
+
+ $events = intercept {
+ $rv = script_fails('t/bin/liveordie.pl', {exit=>255})};
+ is( $events->[0]{pass}, 0, 'script that lives fails script_fails');
+
+};
+
+subtest exception => sub {
+ my $events;
+
+ $events = intercept { program_fails( [$perl, 't/bin/missing.pl'],{ exit =>
255 } ) };
+ is( $events->[0]{pass}, 0, 'missing program failed for program_fails');
+
+ like (
+ dies {
+ script_fails( ['t/bin/liveordie.pl', 'die' ], undef, 'test named X') },
+ qr/exit is a mandatory option/,
+ 'exit is a mandatory option for script_fails'
+ );
+
+ like (
+ dies { program_fails( [$perl, 't/bin/missing.pl'], 'test named X' ) },
+ # dies sub { program_fails( [$perl, 't/bin/missing.pl'], 'test named X'},
+ qr/exit is a mandatory option for program_fails/,
+ 'exit is a mandatory option for program_fails'
+ );
+};
+
+subtest 'program_fails' => sub {
+ my $events;
+
+ $events = intercept {
+ program_fails( [ $perl, 't/bin/missing.pl' ], { exit => 0 } )
+ };
+ is( $events->[0]{pass}, 0, 'missing program failed for program_fails' );
+ is( $events->[0]{name},
+ 'program_fails', 'testname set to program_fails when none provided',
+ );
+ program_fails(
+ [ $perl, 't/bin/liveordie.pl', 'fail', 16 ],
+ { exit => 16 },
+ 'parameters in array'
+ );
+
+ program_fails(
+ ["$perl t/bin/liveordie.pl fail 17"],
+ { exit => 17 },
+ 'parameters in string with program name'
+ );
+
+ $events = intercept {
+ program_fails( [ $perl, 't/bin/liveordie.pl', 'fail', 18 ],
+ { exit => 17 } )
+ };
+ is( $events->[0]{pass},
+ 0, 'program had wrong exit code is marked failure' );
+
+};
+
+done_testing;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/xt/author/pod_coverage.t
new/Test-Script-1.29/xt/author/pod_coverage.t
--- old/Test-Script-1.27/xt/author/pod_coverage.t 2021-02-17
21:16:00.000000000 +0100
+++ new/Test-Script-1.29/xt/author/pod_coverage.t 2021-05-13
17:17:32.000000000 +0200
@@ -31,10 +31,10 @@
my @private_classes;
my %private_methods;
-push @{ $config->{pod_coverage}->{private} },
+push $config->{pod_coverage}->{private}->@*,
'Alien::.*::Install::Files#Inline';
-foreach my $private (@{ $config->{pod_coverage}->{private} })
+foreach my $private ($config->{pod_coverage}->{private}->@*)
{
my($class,$method) = split /#/, $private;
if(defined $class && $class ne '')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Test-Script-1.27/xt/author/pod_spelling_system.t
new/Test-Script-1.29/xt/author/pod_spelling_system.t
--- old/Test-Script-1.27/xt/author/pod_spelling_system.t 2021-02-17
21:16:00.000000000 +0100
+++ new/Test-Script-1.29/xt/author/pod_spelling_system.t 2021-05-13
17:17:32.000000000 +0200
@@ -24,7 +24,7 @@
chdir(File::Spec->catdir($FindBin::Bin, File::Spec->updir, File::Spec->updir));
-add_stopwords(@{ $config->{pod_spelling_system}->{stopwords} });
+add_stopwords($config->{pod_spelling_system}->{stopwords}->@*);
add_stopwords(qw(
Plicease
stdout