]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/TestCommon.pm
remove most internal Email::MIME usage
[public-inbox.git] / lib / PublicInbox / TestCommon.pm
index b50871e8d9c65dd31105f8daa173aa020f4e8826..d952ee6d97715fc644b1dcf0e663d977821c8413 100644 (file)
@@ -9,7 +9,22 @@ 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: $!";
+       # test should've called: require_mods('Email::MIME')
+       require PublicInbox::MIME;
+       PublicInbox::MIME->new(\(do { local $/; <$fh> }));
+}
+
+sub eml_load ($) {
+       my ($path, $cb) = @_;
+       open(my $fh, '<', $path) or die "open $path: $!";
+       require PublicInbox::Eml;
+       PublicInbox::Eml->new(\(do { local $/; <$fh> }));
+}
 
 sub tmpdir (;$) {
        my ($base) = @_;