X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=t%2Ffeed.t;h=5333d5827985419908bb1bf8a6ec782a4f5060a8;hb=95bdac7f09c69036efed537a4d03d5bdd2ae4eb6;hp=8f19352fdbc273383573ddaae11f5f66c1ddbf9a;hpb=3d41aa23f35501ca92aab8aa42980fa73f7fa74f;p=public-inbox.git
diff --git a/t/feed.t b/t/feed.t
index 8f19352f..5333d582 100644
--- a/t/feed.t
+++ b/t/feed.t
@@ -1,51 +1,33 @@
-# Copyright (C) 2014-2018 all contributors
+# Copyright (C) 2014-2020 all contributors
# License: AGPL-3.0+
use strict;
use warnings;
use Test::More;
use Email::MIME;
use PublicInbox::Feed;
-use PublicInbox::Git;
use PublicInbox::Import;
-use PublicInbox::Config;
use PublicInbox::Inbox;
-use File::Temp qw/tempdir/;
my $have_xml_feed = eval { require XML::Feed; 1 };
-require './t/common.perl';
+use PublicInbox::TestCommon;
sub string_feed {
- stream_to_string(PublicInbox::Feed::generate($_[0]));
-}
-
-# ensure we are compatible with existing ssoma installations which
-# do not use fast-import. We can probably remove this in 2018
-my %SSOMA;
-sub rand_use ($) {
- return 0 if $ENV{FAST};
- eval { require IPC::Run };
- return 0 if $@;
- my $cmd = $_[0];
- my $x = $SSOMA{$cmd};
- unless ($x) {
- $x = -1;
- foreach my $p (split(':', $ENV{PATH})) {
- -x "$p/$cmd" or next;
- $x = 1;
- last;
- }
- $SSOMA{$cmd} = $x;
+ my $res = PublicInbox::Feed::generate($_[0]);
+ my $body = $res->[2];
+ my $str = '';
+ while (defined(my $chunk = $body->getline)) {
+ $str .= $chunk;
}
- return if $x < 0;
- ($x > 0 && (int(rand(10)) % 2) == 1);
+ $body->close;
+ $str;
}
-my $tmpdir = tempdir('pi-feed-XXXXXX', TMPDIR => 1, CLEANUP => 1);
+my ($tmpdir, $for_destroy) = tmpdir();
my $git_dir = "$tmpdir/gittest";
my $ibx = PublicInbox::Inbox->new({
address => 'test@example',
name => 'testbox',
- mainrepo => $git_dir,
- url => 'http://example.com/test',
+ inboxdir => $git_dir,
+ url => [ 'http://example.com/test' ],
feedmax => 3,
});
my $git = $ibx->git;
@@ -86,14 +68,7 @@ msg $i
keep me
EOF
- if (rand_use('ssoma-mda')) {
- $im->done;
- my $str = $mime->as_string;
- IPC::Run::run(['ssoma-mda', $git_dir], \$str) or
- die "mda failed: $?\n";
- } else {
- like($im->add($mime), qr/\A:\d+/, 'added');
- }
+ like($im->add($mime), qr/\A:\d+/, 'added');
}
$im->done;
}
@@ -128,14 +103,8 @@ Subject: SPAM!!!!!!!!
Date: Thu, 01 Jan 1970 00:00:00 +0000
EOF
- if (rand_use('ssoma-mda')) {
- my $str = $spam->as_string;
- IPC::Run::run(['ssoma-mda', $git_dir], \$str) or
- die "mda failed: $?\n";
- } else {
- $im->add($spam);
- $im->done;
- }
+ $im->add($spam);
+ $im->done;
}
# check spam shows up
@@ -151,14 +120,8 @@ EOF
}
# nuke spam
- if (rand_use('ssoma-rm')) {
- my $spam_str = $spam->as_string;
- IPC::Run::run(["ssoma-rm", $git_dir], \$spam_str) or
- die "ssoma-rm failed: $?\n";
- } else {
- $im->remove($spam);
- $im->done;
- }
+ $im->remove($spam);
+ $im->done;
# spam no longer shows up
{