まったくそんな需要は無いと思うけど。
package Hoge; use strict; use warnings; use base 'TAP::Harness'; use Config::Pit; use Net::Twitter; sub load { my ($class, $p) = @_; my $prove = $p->{app_prove}; $prove->{harness_class} = $class; } sub new { my $class = shift; my $self = $class->SUPER::new(@_); $self->callback( after_runtests => sub { my $aggregate = shift; my $result = $aggregate->all_passed ? 'PASS' : 'FAIL'; my $config = pit_get('twitter.com', require => { 'username' => 'your username on Twitter', 'password' => 'your password on Twitter', }); Net::Twitter->new(%$config)->update($result); } ); return $self; } 1;
こんな.pmを書いて、
perl -I<Hoge.pmへのパス> $(which prove) -l -PHoge
もしくは
PERL5LIB=$PERL5LIB:<Hoge.pmへのパス> prove -l -PHoge
とやる
proveのプラグインはApp::Prove::Pluginという名前空間じゃなくてもよかった
TAP::Harnessのサブクラスとして定義している場合は"prove --harness=Hoge"と指定してやることもできる