| Test-Harness documentation | Contained in the Test-Harness distribution. |
TAP::Parser::Scheduler::Job - A single testing job.
Version 3.23
use TAP::Parser::Scheduler::Job;
Represents a single test 'job'.
new my $job = TAP::Parser::Scheduler::Job->new(
$name, $desc
);
Returns a new TAP::Parser::Scheduler::Job object.
on_finishRegister a closure to be called when this job is destroyed.
finishCalled when a job is complete to unlock it.
filenamedescriptioncontextas_array_refFor backwards compatibility in callbacks.
is_spinnerReturns false indicating that this is a real job rather than a 'spinner'. Spinners are returned when the scheduler still has pending jobs but can't (because of locking) return one right now.
| Test-Harness documentation | Contained in the Test-Harness distribution. |
package TAP::Parser::Scheduler::Job; use strict; use vars qw($VERSION); use Carp;
$VERSION = '3.23';
sub new { my ( $class, $name, $desc, @ctx ) = @_; return bless { filename => $name, description => $desc, @ctx ? ( context => \@ctx ) : (), }, $class; }
sub on_finish { my ( $self, $cb ) = @_; $self->{on_finish} = $cb; }
sub finish { my $self = shift; if ( my $cb = $self->{on_finish} ) { $cb->($self); } }
sub filename { shift->{filename} } sub description { shift->{description} } sub context { @{ shift->{context} || [] } }
sub as_array_ref { my $self = shift; return [ $self->filename, $self->description, $self->{context} ||= [] ]; }
sub is_spinner {0} 1;