manpagez: man pages & more
man TAP::Parser::Iterator::Process(3)
Home | html | info | man


       TAP::Parser::Iterator::Process - Iterator for process-based TAP sources


       Version 3.36


         use TAP::Parser::Iterator::Process;
         my %args = (
          command  => ['python', '', 'test'],
          merge    => 1,
          setup    => sub { ... },
          teardown => sub { ... },
         my $it   = TAP::Parser::Iterator::Process->new(\%args);
         my $line = $it->next;


       This is a simple iterator wrapper for executing external processes,
       used by TAP::Parser.  Unless you're writing a plugin or subclassing,
       you probably won't need to use this module directly.


   Class Methods

       Create an iterator.  Expects one argument containing a hashref of the

          command  => \@command_to_execute
          merge    => $attempt_merge_stderr_and_stdout?
          setup    => $callback_to_setup_command
          teardown => $callback_to_teardown_command

       Tries to uses IPC::Open3 & IO::Select to communicate with the spawned
       process if they are available.  Falls back onto "open()".

   Instance Methods

       Iterate through the process output, of course.


       Iterate raw input without applying any fixes for quirky input syntax.


       Get the wait status for this iterator's process.


       Get the exit status for this iterator's process.


       Upgrade the input stream to handle UTF8.


       Return a list of filehandles that may be used upstream in a select()
       call to signal that this Iterator is ready. Iterators that are not
       handle based should return an empty list.


       Originally ripped off from Test::Harness.


       TAP::Object(3), TAP::Parser(3), TAP::Parser::Iterator(3)

perl v5.24.0 2016-03-0TAP::Parser::Iterator::Process(3pm)

perl 5.24 - Generated Wed Nov 23 18:58:36 CST 2016
© 2000-2018
Individual documents may contain additional copyright information.