summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonio Terceiro <terceiro@softwarelivre.org>2014-10-07 18:31:18 -0300
committerAntonio Terceiro <terceiro@softwarelivre.org>2014-10-07 18:31:18 -0300
commit21e8e7caa9b420cd7c1b2a96303200ce3686281d (patch)
tree1338102c01bd0ce79a8bdc3bba15187be9bc97dd
parent706a52ea12976ab2b7892e21a97fff99fb6731b3 (diff)
downloadfeed2imap-21e8e7caa9b420cd7c1b2a96303200ce3686281d.tar.gz
feed2imap-21e8e7caa9b420cd7c1b2a96303200ce3686281d.tar.bz2
feed2imap-21e8e7caa9b420cd7c1b2a96303200ce3686281d.zip
Fix cleanup of maildirs
Thanks to Sylvain L. Sauvage for the bug report
-rw-r--r--lib/feed2imap/maildir.rb2
-rw-r--r--test/maildir/cur/1376317520.15789_1.debian:2,S11
-rw-r--r--test/tc_maildir.rb4
3 files changed, 16 insertions, 1 deletions
diff --git a/lib/feed2imap/maildir.rb b/lib/feed2imap/maildir.rb
index 8a5ade1..7335f03 100644
--- a/lib/feed2imap/maildir.rb
+++ b/lib/feed2imap/maildir.rb
@@ -61,7 +61,7 @@ class MaildirAccount
guarantee_maildir(dir)
del_count = 0
- recent_time = Time.now() -- (3 * 24 * 60 * 60) # 3 days
+ recent_time = Time.now() - (3 * 24 * 60 * 60) # 3 days
Dir[File.join(dir, 'cur', '*')].each do |fn|
flags = maildir_file_info_flags(fn)
# don't consider not-seen, flagged, or recent messages
diff --git a/test/maildir/cur/1376317520.15789_1.debian:2,S b/test/maildir/cur/1376317520.15789_1.debian:2,S
new file mode 100644
index 0000000..09df924
--- /dev/null
+++ b/test/maildir/cur/1376317520.15789_1.debian:2,S
@@ -0,0 +1,11 @@
+Date: Mon, 12 Aug 2013 16:25:20 +0200
+From: Antonio Terceiro <terceiro@debian.org>
+To: terceiro@debian.org
+Subject: UTF-8 data: =?iso-8859-1?B?4ent8/o=?=
+Message-ID: <regular-message-id-2@debian.org>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+User-Agent: Mutt/1.5.21 (2010-09-15)
+
+This is a sample email
diff --git a/test/tc_maildir.rb b/test/tc_maildir.rb
index cf9f8e3..7df47b8 100644
--- a/test/tc_maildir.rb
+++ b/test/tc_maildir.rb
@@ -21,6 +21,10 @@ class TestMaildir < Test::Unit::TestCase
folder = create_maildir
msgs = message_count(folder)
+ four_days_ago = Time.now - (4 * 24 * 60 * 60)
+ old_message = Dir.glob(File.join(folder, '**/*:2,S')).first
+ FileUtils.touch old_message, mtime: four_days_ago
+
maildir_account.cleanup(folder)
assert_equal msgs - 1, message_count(folder)