On Thursday 15 November 2007 16:36:31 chromatic wrote: > Parrot::Config::Generated is a much more reliable source of information, > and if the tests truly need information about the local system for > compiling and linking purposes, they should fetch the information from > there, not from the Perl 5 configuration which does not necessarily reflect > the state of the local machine.
Here's a patch that fixes my local failure in t/configure/146-auto_snprintf-01.t and as a bonus removes a warning about not being able to compile a file in t/configure/107-inter_progs-01.t. (The latter warning is not fatal, nor does it cause failures.) I don't promise that this is the right solution, particularly on other platforms, but it works for me. -- c
=== t/configure/107-inter_progs-01.t ================================================================== --- t/configure/107-inter_progs-01.t (revision 22840) +++ t/configure/107-inter_progs-01.t (local) @@ -51,6 +51,7 @@ $task = $conf->steps->[3]; $step_name = $task->step; @step_params = @{ $task->params }; +$conf->data->slurp(); $step = $step_name->new(); ok( defined $step, "$step_name constructor returned defined value" ); === t/configure/146-auto_snprintf-01.t ================================================================== --- t/configure/146-auto_snprintf-01.t (revision 22840) +++ t/configure/146-auto_snprintf-01.t (local) @@ -5,7 +5,7 @@ use strict; use warnings; -use Test::More qw(no_plan); # tests => 2; +use Test::More tests => 11; use Carp; use lib qw( lib t/configure/testlib ); use_ok('config::init::defaults'); @@ -28,13 +28,15 @@ $conf->add_steps($pkg); $conf->options->set(%{$args}); -$task = $conf->steps->[1]; +$conf->data->slurp(); + +$task = $conf->steps->[1]; $step_name = $task->step; @step_params = @{ $task->params }; -$step = $step_name->new(); +$step = $pkg->new(); ok(defined $step, "$step_name constructor returned defined value"); -isa_ok($step, $step_name); +isa_ok($step, $pkg); ok($step->description(), "$step_name has description"); ok($step->runstep($conf), "runstep() returned true value");