[Module-build-checkins] Module-Build/t tilde.t,1.6,1.7
Status: Beta
Brought to you by:
kwilliams
|
From: Randy W. S. <si...@us...> - 2005-06-23 07:30:30
|
Update of /cvsroot/module-build/Module-Build/t In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14486/t Modified Files: tilde.t Log Message: Use DistGen to generate distribution for tests. Use new_from_context() to run 'Build.PL', and capture Module::Build output with stdout_of() from 't/common.pl' Index: tilde.t =================================================================== RCS file: /cvsroot/module-build/Module-Build/t/tilde.t,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- tilde.t 23 Jun 2005 02:54:18 -0000 1.6 +++ tilde.t 23 Jun 2005 07:30:17 -0000 1.7 @@ -5,28 +5,35 @@ use lib 't/lib'; use strict; +use File::Spec (); +my $common_pl = File::Spec->catfile( 't', 'common.pl' ); +require $common_pl; + use Test::More tests => 10; -use TieOut; -use Cwd; -use File::Spec::Functions qw(catdir); use Module::Build; -my $cwd = cwd; +use Cwd (); +my $cwd = Cwd::cwd; + +use DistGen; +my $dist = DistGen->new; +$dist->regen; + +chdir( $dist->dirname ) or die "Can't chdir to '@{[$dist->dirname]}': $!"; sub run_sample { - my($args) = @_; + my @args = @_; local $Test::Builder::Level = $Test::Builder::Level + 1; - chdir 'Sample'; - - Module::Build->run_perl_script('Build.PL', [], [@$args, '--quiet=1']); + $dist->clean; - my $mb = Module::Build->current; + my $mb; + stdout_of( sub { + $mb = Module::Build->new_from_context( @args ); + } ); - chdir $cwd; - return $mb; } @@ -36,33 +43,37 @@ my $mb; - $mb = run_sample( ['--install_base=~']); + $mb = run_sample( install_base => '~' ); is( $mb->install_base, $ENV{HOME} ); - $mb = run_sample( ['--install_base=~/foo'], qr{^$ENV{HOME}/foo} ); + $mb = run_sample( install_base => '~/foo' ); is( $mb->install_base, "$ENV{HOME}/foo" ); - $mb = run_sample( ['--install_base=~~'] ); + $mb = run_sample( install_base => '~~' ); is( $mb->install_base, '~~' ); - $mb = run_sample( ['--install_base=foo~'] ); + $mb = run_sample( install_base => 'foo~' ); is( $mb->install_base, 'foo~' ); - $mb = run_sample( ['--prefix=~'] ); + $mb = run_sample( prefix => '~' ); is( $mb->prefix, $ENV{HOME} ); - $mb = run_sample( ['--install_path', 'html=~/html', - '--install_path', 'lib=~/lib' - ] ); + $mb = run_sample( install_path => { html => '~/html', + lib => '~/lib' } + ); is( $mb->install_destination('lib'), "$ENV{HOME}/lib" ); is( $mb->install_destination('html'), "$ENV{HOME}/html" ); - $mb = run_sample( ['--install_path', 'lib=~/lib'] ); + $mb = run_sample( install_path => { lib => '~/lib' } ); is( $mb->install_destination('lib'), "$ENV{HOME}/lib" ); - $mb = run_sample( ['--destdir=~'] ); + $mb = run_sample( destdir => '~' ); is( $mb->destdir, $ENV{HOME} ); $mb->install_base('~'); is( $mb->install_base, '~', 'API does not expand tildes' ); } + + +chdir( $cwd ) or die "Can''t chdir to '$cwd': $!"; +$dist->remove; |