about summary refs log tree commit homepage
path: root/lib/PublicInbox/TestCommon.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/PublicInbox/TestCommon.pm')
-rw-r--r--lib/PublicInbox/TestCommon.pm9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm
index cd73b5b6..600843f0 100644
--- a/lib/PublicInbox/TestCommon.pm
+++ b/lib/PublicInbox/TestCommon.pm
@@ -9,7 +9,7 @@ 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 mime_load);
+        run_script start_script key2sub xsys xqx mime_load eml_load);
 
 sub mime_load ($) {
         my ($path) = @_;
@@ -17,6 +17,13 @@ sub mime_load ($) {
         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) = @_;
         require File::Temp;