Fix t/comp/parser.t not to load system modules

The fact that "perl" tests (t/base/*.t, t/comp/*.t, t/run/*.t) are run
without -I is intentional. One has to fix each of them.
This commit is contained in:
Petr Písař 2014-04-04 13:52:32 +02:00
parent 81968d9949
commit 6163468508
2 changed files with 59 additions and 1 deletions

View File

@ -0,0 +1,49 @@
From 56b960b25894b4b1e1f2ce0ff443c187860bdf76 Mon Sep 17 00:00:00 2001
From: "Craig A. Berry" <craigberry@mac.com>
Date: Sun, 30 Jun 2013 21:09:21 -0500
Subject: [PATCH] Make t/comp/parser.t get the correct libraries.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
In principle it shouldn't need libraries, but an eval of a utf8
constant now triggers automatic loading of utf8.pm, and it was
looking for that in the usual @INC locations set at configuration
time. Which just might match an installed perl rather than the
perl being tested. So make sure we get the correct libraries.
Petr Pisar: Ported to 5.18.2
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
t/comp/parser.t | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/t/comp/parser.t b/t/comp/parser.t
index 4f2da90..f64d5ce 100644
--- a/t/comp/parser.t
+++ b/t/comp/parser.t
@@ -3,6 +3,11 @@
# Checks if the parser behaves correctly in edge cases
# (including weird syntax errors)
+BEGIN {
+ @INC = qw(. ../lib);
+ chdir 't';
+}
+
print "1..155\n";
sub failed {
@@ -462,7 +467,7 @@ like $@, "^Identifier too long at ", 'ident buffer overflow';
# bug #74022: Loop on characters in \p{OtherIDContinue}
# This test hangs if it fails.
-eval chr 0x387;
+eval chr 0x387; # forces loading of utf8.pm
is(1,1, '[perl #74022] Parser looping on OtherIDContinue chars');
# More awkward tests for #line. Keep these at the end, as they will screw
--
1.9.0

View File

@ -30,7 +30,7 @@
Name: perl
Version: %{perl_version}
# release number must be even higher, because dual-lived modules will be broken otherwise
Release: 296%{?dist}
Release: 297%{?dist}
Epoch: %{perl_epoch}
Summary: Practical Extraction and Report Language
Group: Development/Languages
@ -118,6 +118,10 @@ Patch21: perl-5.19.2-Fix-using-regexes-with-multiple-code-blocks.patch
# CPAN RT#85015
Patch22: perl-5.18.1-Document-Math-BigInt-CalcEmu-requires-Math-BigInt.patch
# Fix t/comp/parser.t not to load system modules, bug #1084399, RT#121579,
# in upstream after 5.19.1
Patch23: perl-5.18.2-Make-t-comp-parser.t-get-the-correct-libraries.patch
# Link XS modules to libperl.so with EU::CBuilder on Linux, bug #960048
Patch200: perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch
@ -1904,6 +1908,7 @@ tarball from perl.org.
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch200 -p1
%patch201 -p1
@ -1930,6 +1935,7 @@ perl -x patchlevel.h \
'Fedora Patch20: Reap child in case where exception has been thrown (RT#114722)' \
'Fedora Patch21: Fix using regular expressions containing multiple code blocks (RT#117917)' \
'Fedora Patch22: Document Math::BigInt::CalcEmu requires Math::BigInt (CPAN RT#85015)' \
'Fedora Patch23: Fix t/comp/parser.t not to load system modules (RT#121579)' \
'Fedora Patch200: Link XS modules to libperl.so with EU::CBuilder on Linux' \
'Fedora Patch201: Link XS modules to libperl.so with EU::MM on Linux' \
%{nil}
@ -3604,6 +3610,9 @@ sed \
# Old changelog entries are preserved in CVS.
%changelog
* Fri Apr 04 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-297
- Fix t/comp/parser.t not to load system modules (bug #1084399)
* Mon Feb 03 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-296
- Move macro files into %%{_rpmconfigdir}/macros.d