X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=t%2Fv2mirror.t;h=a097a7f3a2cd0da80f109ec098210c034d0eef43;hb=1bbfab375438f149dcff9047dd0c5ed3a08eed53;hp=283b2b228852f132f5ab3a3bb2480d81fa3f876f;hpb=59c946a014f34cd90621b1fb3b30af99ba80bf61;p=public-inbox.git
diff --git a/t/v2mirror.t b/t/v2mirror.t
index 283b2b22..a097a7f3 100644
--- a/t/v2mirror.t
+++ b/t/v2mirror.t
@@ -1,12 +1,13 @@
-# Copyright (C) 2018 all contributors
+# Copyright (C) 2018-2019 all contributors
# License: AGPL-3.0+
use strict;
use warnings;
use Test::More;
require './t/common.perl';
+require_git(2.6);
# Integration tests for HTTP cloning + mirroring
-foreach my $mod (qw(Plack::Util Plack::Builder Danga::Socket
+foreach my $mod (qw(Plack::Util Plack::Builder
HTTP::Date HTTP::Status Search::Xapian DBD::SQLite
IPC::Run)) {
eval "require $mod";
@@ -16,6 +17,7 @@ use File::Temp qw/tempdir/;
use IO::Socket;
use POSIX qw(dup2);
use_ok 'PublicInbox::V2Writable';
+use PublicInbox::InboxWritable;
use PublicInbox::MIME;
use PublicInbox::Config;
# FIXME: too much setup
@@ -26,7 +28,7 @@ my $pi_config = "$tmpdir/config";
open my $fh, '>', $pi_config or die "open($pi_config): $!";
print $fh <<"" or die "print $pi_config: $!";
[publicinbox "v2"]
- mainrepo = $tmpdir/in
+ inboxdir = $tmpdir/in
address = test\@example.com
close $fh or die "close($pi_config): $!";
@@ -58,17 +60,11 @@ my $epoch_max = $v2w->{epoch_max};
ok($epoch_max > 0, "multiple epochs");
$v2w->done;
-my %opts = (
- LocalAddr => '127.0.0.1',
- ReuseAddr => 1,
- Proto => 'tcp',
- Listen => 1024,
-);
my ($sock, $pid);
END { kill 'TERM', $pid if defined $pid };
$! = 0;
-$sock = IO::Socket::INET->new(%opts);
+$sock = tcp_server();
ok($sock, 'sock created');
my $cmd = [ "$script-httpd", "--stdout=$tmpdir/out", "--stderr=$tmpdir/err" ];
ok(defined($pid = spawn_listener(undef, $cmd, [ $sock ])),
@@ -78,11 +74,13 @@ $sock = undef;
my @cmd;
foreach my $i (0..$epoch_max) {
- @cmd = (qw(git clone --mirror -q), "http://$host:$port/v2/$i",
+ my $sfx = $i == 0 ? '.git' : '';
+ @cmd = (qw(git clone --mirror -q),
+ "http://$host:$port/v2/$i$sfx",
"$tmpdir/m/git/$i.git");
- is(system(@cmd), 0, 'cloned OK');
- ok(-d "$tmpdir/m/git/$i.git", 'mirror OK');
+ is(system(@cmd), 0, "cloned $i.git");
+ ok(-d "$tmpdir/m/git/$i.git", "mirror $i OK");
}
@cmd = ("$script-init", '-V2', 'm', "$tmpdir/m", 'http://example.com/m',
@@ -90,7 +88,7 @@ foreach my $i (0..$epoch_max) {
is(system(@cmd), 0, 'initialized public-inbox -V2');
is(system("$script-index", "$tmpdir/m"), 0, 'indexed');
-my $mibx = { mainrepo => "$tmpdir/m", address => 'alt@example.com' };
+my $mibx = { inboxdir => "$tmpdir/m", address => 'alt@example.com' };
$mibx = PublicInbox::Inbox->new($mibx);
is_deeply([$mibx->mm->minmax], [$ibx->mm->minmax], 'index synched minmax');