Lara:

I was unable to reproduce the test failure you encountered at the YAPC
Parrot build fest.  So I'm somewhat groping in the dark as to a
solution.   However, I looked at the test and figured that it would
benefit from some simplification.

Can you re-run 'perl Configure.pl', apply the patch attached, and then
run 'prove -v t/postconfigure/06-data_slurp_temp.t' and post the results?

If you continue to get a failure, it would be helpful if you could post
the output of 'perl -V' and attach the 'myconfig' file created by
Configure.pl in the top level of your Parrot sandbox directory.

Thank you very much.

Jim Keenan

Index: t/postconfigure/06-data_slurp_temp.t
===================================================================
--- t/postconfigure/06-data_slurp_temp.t        (revision 28593)
+++ t/postconfigure/06-data_slurp_temp.t        (working copy)
@@ -6,16 +6,12 @@
 use strict;
 use warnings;
 
-use Test::More tests => 32;
+use Test::More tests => 33;
 use Carp;
 use lib qw( lib );
 use Parrot::Configure;
 use Parrot::Configure::Options qw( process_options );
-use_ok(
-    'Parrot::Configure::Step::List', qw|
-        get_steps_list
-        |
-);
+use_ok( 'Parrot::Configure::Step::List', qw| get_steps_list |);
 use IO::CaptureOutput qw | capture |;
 
 $| = 1;
@@ -95,10 +91,18 @@
 
     eval { $conf->data()->slurp_temp(); };
     ok( ( defined $@ ) && ( !$@ ), "Parrot::Configure::slurp_temp() succeeded" 
);
-   my $rv;
-   my $stdout;
-   capture ( sub {$rv = $conf->run_single_step( $args->{step}) }, \$stdout);
-   ok( ( defined $@ ) && ( !$@ ), "Parrot::Configure::run_single_step() 
succeeded" );
+    {
+        my $rv;
+        my ($stdout, $stderr);
+        capture(
+            sub { $rv = $conf->run_single_step( $args->{step}) },
+            \$stdout,
+            \$stderr
+        );
+        ok($rv, "run_single_step() returned true value");
+        like($stdout, qr/Generating makefiles and other build files/s,
+            "Able to simulate operation of tools/dev/reconfigure.pl.");
+    }
 }
 
 pass("Completed all tests in $0");

Reply via email to