X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;ds=sidebyside;f=lib%2FPublicInbox%2FTestCommon.pm;h=600843f006663815a3b0f95b1f61a1c24dfa3899;hb=57af9c8d0bedafac3267b5b42f963bb8aa5c2ea1;hp=b50871e8d9c65dd31105f8daa173aa020f4e8826;hpb=6e07def560b211d9a1a3221862e72b7aeb4a31b3;p=public-inbox.git diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm index b50871e8..600843f0 100644 --- a/lib/PublicInbox/TestCommon.pm +++ b/lib/PublicInbox/TestCommon.pm @@ -9,7 +9,20 @@ use Fcntl qw(FD_CLOEXEC F_SETFD F_GETFD :seek); use POSIX qw(dup2); use IO::Socket::INET; our @EXPORT = qw(tmpdir tcp_server tcp_connect require_git require_mods - run_script start_script key2sub xsys xqx); + run_script start_script key2sub xsys xqx mime_load eml_load); + +sub mime_load ($) { + my ($path) = @_; + open(my $fh, '<', $path) or die "open $path: $!"; + PublicInbox::MIME->new(\(do { local $/; <$fh> })); +} + +sub eml_load ($) { + my ($path, $cb) = @_; + open(my $fh, '<', $path) or die "open $path: $!"; + binmode $fh; + PublicInbox::Eml->new(\(do { local $/; <$fh> })); +} sub tmpdir (;$) { my ($base) = @_;