use v6.d;
use Test;
use lib 't/lib';
use TestIndex;
use MaildirIndexer::Store;
use MaildirIndexer::Index;
my Channel $file-channel .= new;
my TestIndex $index .= new;
my MaildirIndexer::Store $store .= new: :$file-channel, :indices($index), :2workers;
$store.start();
$index.set-expect(4);
$file-channel.send("t/fixtures/$_".IO) for qw[one/cur/1 one/cur/2 two/cur/1 two/cur/2];
await $index.seen-all;
is-deeply(
$index.mails,
%(
one => %( 't/fixtures/one/cur/1' => 1, 't/fixtures/one/cur/2' => 1 ),
two => %( 't/fixtures/two/cur/1' => 1, 't/fixtures/two/cur/2' => 1 ),
),
'mails should be indexed',
);
is(
$store.mailbox-for-email(MaildirIndexer::Email.new),'foo',
'index is consulted',
);
done-testing;