aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2016-12-27 16:26:52 +0000
committerdakkar <dakkar@thenautilus.net>2016-12-27 16:26:52 +0000
commit12541f277d5bbb121a3c6f59a54053a236832ab7 (patch)
tree0d81d3b258ffd27702d6f32729cd19e59685504f
parentmore todo (diff)
downloadSietima-12541f277d5bbb121a3c6f59a54053a236832ab7.tar.gz
Sietima-12541f277d5bbb121a3c6f59a54053a236832ab7.tar.bz2
Sietima-12541f277d5bbb121a3c6f59a54053a236832ab7.zip
fix MailStore::FS test & impl
-rw-r--r--lib/Sietima/MailStore/FS.pm11
-rw-r--r--t/tests/sietima/mailstore.t2
2 files changed, 9 insertions, 4 deletions
diff --git a/lib/Sietima/MailStore/FS.pm b/lib/Sietima/MailStore/FS.pm
index 1641c55..a45b433 100644
--- a/lib/Sietima/MailStore/FS.pm
+++ b/lib/Sietima/MailStore/FS.pm
@@ -62,8 +62,13 @@ sub retrieve_by_tags($self,@tags) {
state $check = compile(Object,slurpy ArrayRef[Str]);$check->(@_);
my %msgs;
- for my $tag (@tags) {
- $_++ for @msgs{$self->_tagged_by($tag)};
+ if (@tags) {
+ for my $tag (@tags) {
+ $_++ for @msgs{$self->_tagged_by($tag)};
+ }
+ }
+ else {
+ $msgs{$_->basename}=0 for $self->_msgdir->children;
}
my @ret;
@@ -82,7 +87,7 @@ sub remove($self,$id) {
state $check = compile(Object,Str);$check->(@_);
for my $tag_file ($self->_tagdir->children) {
- $tag_file->edit_lines( sub { /\A\Q$id\E\n?\z/ ? '' : $_ } );
+ $tag_file->edit_lines( sub { $_='' if /\A\Q$id\E\n?\z/ } );
}
$self->_msgdir->child($id)->remove;
diff --git a/t/tests/sietima/mailstore.t b/t/tests/sietima/mailstore.t
index 2c2c74a..b7991a5 100644
--- a/t/tests/sietima/mailstore.t
+++ b/t/tests/sietima/mailstore.t
@@ -111,7 +111,7 @@ subtest 'file store' => sub {
my $root = Path::Tiny->tempdir;
- test_store(Test::Sietima::MailStore->new({root => $root}));
+ test_store(Sietima::MailStore::FS->new({root => $root}));
};
done_testing;