[Module-build-checkins] Module-Build/t destinations.t,NONE,1.1
Status: Beta
Brought to you by:
kwilliams
|
From: Ken W. <kwi...@us...> - 2005-06-07 03:34:31
|
Update of /cvsroot/module-build/Module-Build/t In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28385/t Added Files: destinations.t Log Message: First stab at --prefix support --- NEW FILE: destinations.t --- use strict; use Test; BEGIN { plan tests => 32 } use Module::Build; ok(1); use Config; use File::Spec::Functions qw( catdir ); #use File::Spec; # #my $common_pl = File::Spec->catfile('t', 'common.pl'); #require $common_pl; ok( $INC{'Module/Build.pm'}, '/blib/', "Make sure Module::Build was loaded from blib/"); my $m = Module::Build->current; ok( UNIVERSAL::isa( $m, 'Module::Build::Base' ) ); ok( !defined $m->install_base ); ok( !defined $m->prefix ); # Do default tests here ok( $m->install_destination( 'lib' ), $Config{ installsitelib } ); ok( $m->install_destination( 'arch' ), $Config{ installsitearch } ); ok( $m->install_destination( 'bin' ), $Config{ installsitebin } || $Config{ installbin } ); ok( $m->install_destination( 'script' ), $Config{ installsitescript } || $Config{ installsitebin } || $Config{ installscript } ); ok( $m->install_destination( 'bindoc' ), $Config{ installsiteman1dir } || $Config{ installman1dir } ); ok( $m->install_destination( 'libdoc' ), $Config{ installsiteman3dir } || $Config{ installman3dir } ); my $install_base = catdir( 'foo', 'bar' ); $m->install_base( $install_base ); ok( !defined $m->prefix ); ok( $m->install_destination( 'lib' ), catdir( $install_base, 'lib', 'perl5' ) ); ok( $m->install_destination( 'arch' ), catdir( $install_base, 'lib', 'perl5', $Config{archname} ) ); ok( $m->install_destination( 'bin' ), catdir( $install_base, 'bin' ) ); ok( $m->install_destination( 'script' ), catdir( $install_base, 'bin' ) ); ok( $m->install_destination( 'bindoc' ), catdir( $install_base, 'man', 'man1') ); ok( $m->install_destination( 'libdoc' ), catdir( $install_base, 'man', 'man3' ) ); $m->install_base( undef ); ok( !defined $m->install_base ); ##### Adaptation START # Adapted from ExtUtils::MakeMaker::MM_Any::init_INSTALL_from_PREFIX() my $core_prefix = $Config{installprefixexp} || $Config{installprefix} || $Config{prefixexp} || $Config{prefix} || ''; my $vend_prefix = $Config{usevendorprefix} ? $Config{vendorprefixexp} : ''; my $site_prefix = $Config{siteprefixexp} || $core_prefix; my $libstyle = $Config{installstyle} || 'lib/perl5'; my $manstyle = $libstyle eq 'lib/perl5' ? $libstyle : ''; ##### Adaptation END my $prefix = catdir( qw( some prefix ) ); $m->prefix( $prefix ); ok( $m->{properties}{prefix} eq $prefix ); my $test_val; ($test_val = $Config{installsitelib}) =~ s!\Q$site_prefix\E\b!$prefix!; ok( $m->install_destination( 'lib' ), $test_val ); ($test_val = $Config{installsitearch}) =~ s!\Q$site_prefix\E\b!$prefix!; ok( $m->install_destination( 'arch' ), $test_val ); ($test_val = $Config{installsitebin}) =~ s!\Q$site_prefix\E\b!$prefix!; ok( $m->install_destination( 'bin' ), $test_val ); ($test_val = $Config{installscript}) =~ s!\Q$site_prefix\E\b!$prefix!; ok( $m->install_destination( 'script' ), $test_val ); ($test_val = $Config{installsiteman1dir}) =~ s!\Q$site_prefix\E\b!$prefix!; ok( $m->install_destination( 'bindoc' ), $test_val ); ($test_val = $Config{installsiteman3dir}) =~ s!\Q$site_prefix\E\b!$prefix!; ok( $m->install_destination( 'libdoc' ), $test_val ); $m->install_base( $install_base ); ok( $m->install_destination( 'lib' ), catdir( $install_base, 'lib', 'perl5' ) ); ok( $m->install_destination( 'arch' ), catdir( $install_base, 'lib', 'perl5', $Config{archname} ) ); ok( $m->install_destination( 'bin' ), catdir( $install_base, 'bin' ) ); ok( $m->install_destination( 'script' ), catdir( $install_base, 'bin' ) ); ok( $m->install_destination( 'bindoc' ), catdir( $install_base, 'man', 'man1') ); ok( $m->install_destination( 'libdoc' ), catdir( $install_base, 'man', 'man3' ) ); |