From 9f02576da775abf208f5a03c03b6f7abd72596d0 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 12 Oct 2021 11:47:04 +0000 Subject: msgmap: ->new_file to supports $ibx arg, drop ->new The original Msgmap->new API was v1-specific and not necessary. The ->new_file API now supports an $ibx object being passed to it, simplify -no_fsync use. It will also make an upcoming change easier... --- t/altid.t | 4 ++-- t/altid_v2.t | 4 ++-- t/filter_rubylang.t | 2 +- t/init.t | 3 ++- t/msgmap.t | 5 +++-- 5 files changed, 10 insertions(+), 8 deletions(-) (limited to 't') diff --git a/t/altid.t b/t/altid.t index 87635b19..3ce08a6a 100644 --- a/t/altid.t +++ b/t/altid.t @@ -15,7 +15,7 @@ my $altid = [ "serial:gmane:file=$alt_file" ]; my $ibx; { - my $mm = PublicInbox::Msgmap->new_file($alt_file, 1); + my $mm = PublicInbox::Msgmap->new_file($alt_file, 2); is($mm->mid_set(1234, 'a@example.com'), 1, 'mid_set once OK'); ok(0 == $mm->mid_set(1234, 'a@example.com'), 'mid_set not idempotent'); ok(0 == $mm->mid_set(1, 'a@example.com'), 'mid_set fails with dup MID'); @@ -48,7 +48,7 @@ EOF }; { - my $mm = PublicInbox::Msgmap->new_file($alt_file, 1); + my $mm = PublicInbox::Msgmap->new_file($alt_file, 2); my ($min, $max) = $mm->minmax; my $num = $mm->mid_insert('b@example.com'); ok($num > $max, 'auto-increment goes beyond mid_set'); diff --git a/t/altid_v2.t b/t/altid_v2.t index 47ebec85..281a09d5 100644 --- a/t/altid_v2.t +++ b/t/altid_v2.t @@ -13,7 +13,7 @@ my $altid = [ "serial:gmane:file=$another" ]; my $ibx = create_inbox 'v2', version => 2, indexlevel => 'medium', altid => $altid, sub { my ($im, $ibx) = @_; - my $mm = PublicInbox::Msgmap->new_file("$ibx->{inboxdir}/$another", 1); + my $mm = PublicInbox::Msgmap->new_file("$ibx->{inboxdir}/$another", 2); $mm->mid_set(1234, 'a@example.com') == 1 or BAIL_OUT 'mid_set once'; ok(0 == $mm->mid_set(1234, 'a@example.com'), 'mid_set not idempotent'); ok(0 == $mm->mid_set(1, 'a@example.com'), 'mid_set fails with dup MID'); @@ -26,7 +26,7 @@ Message-ID: hello world gmane:666 EOF }; -my $mm = PublicInbox::Msgmap->new_file("$ibx->{inboxdir}/$another", 1); +my $mm = PublicInbox::Msgmap->new_file("$ibx->{inboxdir}/$another", 2); ok(0 == $mm->mid_set(1234, 'a@example.com'), 'mid_set not idempotent'); ok(0 == $mm->mid_set(1, 'a@example.com'), 'mid_set fails with dup MID'); my $mset = $ibx->search->mset('gmane:1234'); diff --git a/t/filter_rubylang.t b/t/filter_rubylang.t index 81799451..4e9695e1 100644 --- a/t/filter_rubylang.t +++ b/t/filter_rubylang.t @@ -44,7 +44,7 @@ EOF $mime = PublicInbox::Eml->new($msg); $ret = $f->delivery($mime); is($ret, $mime, "delivery successful"); - my $mm = PublicInbox::Msgmap->new($git_dir); + my $mm = $ibx->mm; is($mm->num_for('a@b'), 12, 'MM entry created based on X-ML-Count'); $msg = <<'EOF'; diff --git a/t/init.t b/t/init.t index 752e5af9..4bec6a2f 100644 --- a/t/init.t +++ b/t/init.t @@ -199,7 +199,8 @@ SKIP: { $err = ''; ok(run_script([qw(-mda --no-precheck)], $env, $rdr), 'deliver V1'); diag "err=$err" if $err; - $mm = PublicInbox::Msgmap->new("$tmpdir/skip4"); + $mm = PublicInbox::Msgmap->new_file( + "$tmpdir/skip4/public-inbox/msgmap.sqlite3"); $n = $mm->num_for($mid); is($n, 13, 'V1 NNTP article numbers skipped via --skip-artnum'); } diff --git a/t/msgmap.t b/t/msgmap.t index 2d462dfb..a3b7200f 100644 --- a/t/msgmap.t +++ b/t/msgmap.t @@ -7,7 +7,8 @@ use PublicInbox::TestCommon; require_mods('DBD::SQLite'); use_ok 'PublicInbox::Msgmap'; my ($tmpdir, $for_destroy) = tmpdir(); -my $d = PublicInbox::Msgmap->new($tmpdir, 1); +my $f = "$tmpdir/msgmap.sqlite3"; +my $d = PublicInbox::Msgmap->new_file($f, 1); my %mid2num; my %num2mid; @@ -50,7 +51,7 @@ is($d->mid_delete('a@b') + 0, 0, 'delete again returns zero'); is(undef, $d->num_for('a@b'), 'num_for fails on deleted msg'); $d = undef; -ok($d = PublicInbox::Msgmap->new($tmpdir, 1), 'idempotent DB creation'); +ok($d = PublicInbox::Msgmap->new_file($f, 1), 'idempotent DB creation'); my ($min, $max) = $d->minmax; ok($min > 0, "article min OK"); ok($max > 0 && $max < 10, "article max OK"); -- cgit v1.2.3-24-ge0c7