add test sub to wait for WebGUI::Forks

This commit is contained in:
Doug Bell 2011-01-04 17:59:11 -06:00
parent 8299e9e706
commit b0b1a299d5

View file

@ -876,4 +876,25 @@ sub cleanup {
}
}
#----------------------------------------------------------------------------
=head2 waitForAllForks( )
Will block until all WebGUI::Fork processes are completed.
=cut
sub waitForAllForks {
my ( $class ) = @_;
my $session = session;
my @forkIds = $session->db->quickArray( "SELECT id FROM fork WHERE finished != 1" );
my $wait = 1;
while ( $wait ) {
$wait = 0;
$wait = 1 if grep { !$_->isFinished } map { WebGUI::Fork->new( $session, $_ ) } @forkIds;
return unless $wait;
sleep 1;
}
}
1;