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