Without this fix, Test-CleanNamespaces effectively needs perl-5.22
stabilized in order to satisfy Test-Tester from Perl-5.22
However, satisfying Test-Tester from a mechanism other than Perl-5.22
confuses portages dependency resolver, and confuses portage to not be able
to upgrade perl, and not being able to upgrade perl means perl can't be
stabilized, invoking a stabilization-needs-stabilization bug.
Hence, the choice here optimises for assuming stabilization will
happen/has happened, and removes any dependency on Test::Tester, assuming
portage will eventually provide it for you.
And just to be sure, we use perl before the test phase executes
to determine if Test::Tester was /actually/ installed and then only run tests
if it was.
This means before stabilization, some people *might* install this and not have
tests run, but everyone *will* get tests working after stabilization, as
opposed to the opposite occurring and stabilization being blocked.
Bug: https://bugs.gentoo.org/584238
Package-Manager: portage-2.3.0
RepoMan-Options: --include-arches="alpha amd64 amd64-fbsd arm arm64 hppa ia64 m68k mips nios2 ppc ppc64 riscv s390 sh sparc sparc-fbsd x86 x86-fbsd"
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
dev-perl/Test-Deep
>=virtual/perl-Test-Simple-0.880.0
dev-perl/Test-Requires
- || ( >=virtual/perl-Test-Simple-1.1.14 dev-perl/Test-Tester )
>=dev-perl/Test-Warnings-0.9.0
virtual/perl-if
virtual/perl-parent
"
SRC_TEST="do parallel"
+
+src_test() {
+ # Bug 584238 Avoidance
+ if perl -e 'exit ( eval { require Test::Tester; 1 } ? 0 : 1 )'; then
+ perl-module_src_test
+ else
+ einfo "Test phase skipped: Test::Tester required for tests"
+ einfo "Please upgrade to >=dev-lang/perl-5.22.0 or >=virtual/perl-Test-Simple-1.1.10"
+ einfo "if you want this tested"
+ fi
+}