xref: /openbsd-src/gnu/usr.bin/perl/cpan/ExtUtils-MakeMaker/t/prefixify.t (revision f2da64fbbbf1b03f09f390ab01267c93dfd77c4c)
1#!/usr/bin/perl -w
2
3BEGIN {
4    unshift @INC, 't/lib';
5}
6
7use strict;
8use Test::More;
9
10if( $^O eq 'VMS' ) {
11    plan skip_all => 'prefixify works differently on VMS';
12}
13else {
14    plan tests => 4;
15}
16use ExtUtils::MakeMaker::Config;
17use File::Spec;
18use ExtUtils::MM;
19
20my $Is_Dosish = $^O =~ /^(dos|MSWin32)$/;
21
22my $mm = bless {}, 'MM';
23
24my $default = File::Spec->catdir(qw(this that));
25
26$mm->prefixify('installbin', 'wibble', 'something', $default);
27is( $mm->{INSTALLBIN}, $Config{installbin},
28                                            'prefixify w/defaults');
29
30$mm->{ARGS}{PREFIX} = 'foo';
31$mm->prefixify('installbin', 'wibble', 'something', $default);
32is( $mm->{INSTALLBIN}, File::Spec->catdir('something', $default),
33                                            'prefixify w/defaults and PREFIX');
34
35$mm->prefixify('installbin', '../wibble', 'something', $default);
36is( $mm->{INSTALLBIN}, File::Spec->catdir('something', $default),
37                                            'relative paths + PREFIX');
38
39SKIP: {
40    skip "Test for DOSish prefixification", 1 unless $Is_Dosish;
41
42    $Config{wibble} = 'C:\opt\perl\wibble';
43    $mm->prefixify('wibble', 'C:\opt\perl', 'C:\yarrow');
44
45    is( $mm->{WIBBLE}, 'C:\yarrow\wibble',  'prefixify Win32 paths' );
46}
47