Commit | Line | Data |
---|---|---|
4343e7c3 | 1 | # This is a replacement for the old BEGIN preamble which heads (or |
db7c4376 | 2 | # should head) up every core test program to prepare it for running. |
4343e7c3 MS |
3 | # Now instead of: |
4 | # | |
5 | # BEGIN { | |
6 | # chdir 't' if -d 't'; | |
7 | # @INC = '../lib'; | |
8 | # } | |
9 | # | |
c1b78184 MS |
10 | # Its primary purpose is to clear @INC so core tests don't pick up |
11 | # modules from an installed Perl. | |
12 | # | |
db7c4376 PG |
13 | # t/TEST will use -MTestInit. You may "use TestInit" in the test |
14 | # programs but it is not required. | |
4343e7c3 | 15 | # |
db7c4376 PG |
16 | # P.S. This documentation is not in POD format in order to avoid |
17 | # problems when there are fundamental bugs in perl. | |
4343e7c3 | 18 | |
18fc9488 DM |
19 | package TestInit; |
20 | ||
5ed59b83 | 21 | $VERSION = 1.02; |
2af1ab88 | 22 | |
5ed59b83 | 23 | chdir 't' if -f 't/TestInit.pm'; |
a1910616 | 24 | |
5ed59b83 NC |
25 | # Let tests know they're running in the perl core. Useful for modules |
26 | # which live dual lives on CPAN. | |
e447daf9 NC |
27 | # Don't interfere with the taintedness of %ENV, this could perturbate tests. |
28 | # This feels like a better solution than the original, from | |
29 | # http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2003-07/msg00154.html | |
30 | $ENV{PERL_CORE} = $^X; | |
5ed59b83 NC |
31 | if (${^TAINT}) { |
32 | @INC = '../lib'; | |
33 | } else { | |
34 | @INC = ('../lib', '.'); | |
35 | } | |
a1910616 | 36 | |
7a315204 | 37 | $0 =~ s/\.dp$//; # for the test.deparse make target |
ec5f1610 RH |
38 | 1; |
39 |