xref: /openbsd-src/gnu/usr.bin/perl/cpan/Test-Harness/t/lib/MyFileSourceHandler.pm (revision 91f110e064cd7c194e59e019b83bb7496c1c84d4)
1# subclass for testing TAP::Harness custom sources
2
3package MyFileSourceHandler;
4
5use strict;
6use vars qw( @ISA $LAST_OBJ $CAN_HANDLE $MAKE_ITER $LAST_SOURCE );
7
8use MyCustom;
9use TAP::Parser::IteratorFactory;
10use TAP::Parser::SourceHandler::File;
11
12@ISA         = qw( TAP::Parser::SourceHandler::File MyCustom );
13$LAST_OBJ    = undef;
14$CAN_HANDLE  = undef;
15$MAKE_ITER   = undef;
16$LAST_SOURCE = undef;
17
18TAP::Parser::IteratorFactory->register_handler(__PACKAGE__);
19
20sub can_handle {
21    my $class = shift;
22    $class->SUPER::can_handle(@_);
23    $CAN_HANDLE++;
24    return $class;
25}
26
27sub make_iterator {
28    my ( $class, $source ) = @_;
29    my $iter = $class->SUPER::make_iterator($source);
30    $MAKE_ITER++;
31    $LAST_SOURCE = $source;
32    return $iter;
33}
34
351;
36