From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 9C3D91F8C6; Thu, 2 Sep 2021 10:25:05 +0000 (UTC) Date: Thu, 2 Sep 2021 10:25:04 +0000 From: Eric Wong To: meta@public-inbox.org Subject: [SQUASH 4/3] t/lei-auto-watch: workaround for FreeBSD kevent Message-ID: References: <20210902101758.18715-1-e@80x24.org> <20210902101758.18715-4-e@80x24.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20210902101758.18715-4-e@80x24.org> List-Id: My FreeBSD VM seems to need longer for this test than inotify under Linux, likely because the kevent support code is more complicated in userspace and needs extra file handles. And drop unnecessary tick delay after "note-event done" since that seems unneeded with transactions eliminated for mail_sync.sqlite3 --- t/lei-auto-watch.t | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/t/lei-auto-watch.t b/t/lei-auto-watch.t index 321c0ab3..146402a6 100644 --- a/t/lei-auto-watch.t +++ b/t/lei-auto-watch.t @@ -4,8 +4,9 @@ use strict; use v5.10.1; use PublicInbox::TestCommon; use File::Basename qw(basename); my ($ro_home, $cfg_path) = setup_public_inboxes; -my $have_fast_inotify = eval { require Linux::Inotify2 } || - eval { require IO::KQueue }; +my $tick = 2.1; +my $have_fast_inotify = eval { require Linux::Inotify2; $tick = 0.1 } || + eval { require IO::KQueue; $tick = 0.5 }; $have_fast_inotify or diag("$0 IO::KQueue or Linux::Inotify2 missing, test will be slow"); @@ -30,11 +31,10 @@ test_lei(sub { lei_ok qw(add-watch), $x; my $dst = $x[0] . 'S'; rename($x[0], $dst) or xbail "rename($x[0], $dst): $!"; - tick($have_fast_inotify ? undef : 2.1); # wait for inotify + tick($tick); # wait for inotify or kevent my @y2 = glob("$y/*/*"); is_deeply(\@y2, [ "$y[0]S" ], "`seen' kw propagated to `y' dir"); lei_ok qw(note-event done); - tick; # XXX why is this needed? lei_ok qw(inspect), "blob:$oid"; $ins = json_utf8->decode($lei_out); $exp = { "maildir:$x" => [ map { basename($_) } glob("$x/*/*") ],