| Index: third_party/buildbot_7_12/buildbot/test/test_maildir.py
|
| diff --git a/third_party/buildbot_7_12/buildbot/test/test_maildir.py b/third_party/buildbot_7_12/buildbot/test/test_maildir.py
|
| deleted file mode 100644
|
| index b79cbd319415b4f4a7a211c155de3b1a039b0b36..0000000000000000000000000000000000000000
|
| --- a/third_party/buildbot_7_12/buildbot/test/test_maildir.py
|
| +++ /dev/null
|
| @@ -1,92 +0,0 @@
|
| -# -*- test-case-name: buildbot.test.test_maildir -*-
|
| -
|
| -from twisted.trial import unittest
|
| -import os, shutil
|
| -from buildbot.changes.mail import FCMaildirSource
|
| -from twisted.internet import defer, reactor, task
|
| -from twisted.python import util, log
|
| -
|
| -class TimeOutError(Exception):
|
| - """The message were not received in a timely fashion"""
|
| -
|
| -class MaildirTest(unittest.TestCase):
|
| - SECONDS_PER_MESSAGE = 1.0
|
| -
|
| - def setUp(self):
|
| - log.msg("creating empty maildir")
|
| - self.maildir = "test-maildir"
|
| - if os.path.isdir(self.maildir):
|
| - shutil.rmtree(self.maildir)
|
| - log.msg("removing stale maildir")
|
| - os.mkdir(self.maildir)
|
| - os.mkdir(os.path.join(self.maildir, "cur"))
|
| - os.mkdir(os.path.join(self.maildir, "new"))
|
| - os.mkdir(os.path.join(self.maildir, "tmp"))
|
| - self.source = None
|
| -
|
| - def tearDown(self):
|
| - log.msg("removing old maildir")
|
| - shutil.rmtree(self.maildir)
|
| - if self.source:
|
| - return self.source.stopService()
|
| -
|
| - def addChange(self, c):
|
| - # NOTE: this assumes every message results in a Change, which isn't
|
| - # true for msg8-prefix
|
| - log.msg("got change")
|
| - self.changes.append(c)
|
| -
|
| - def deliverMail(self, msg):
|
| - log.msg("delivering", msg)
|
| - newdir = os.path.join(self.maildir, "new")
|
| - # to do this right, use safecat
|
| - shutil.copy(msg, newdir)
|
| -
|
| - def poll(self, changes, count, d):
|
| - if len(changes) == count:
|
| - d.callback("passed")
|
| -
|
| - def testMaildir(self):
|
| - self.changes = []
|
| - s = self.source = FCMaildirSource(self.maildir)
|
| - s.parent = self
|
| - s.startService()
|
| - testfiles_dir = util.sibpath(__file__, "mail")
|
| - testfiles = [msg for msg in os.listdir(testfiles_dir)
|
| - if msg.startswith("freshcvs")]
|
| - assert testfiles
|
| - testfiles.sort()
|
| - count = len(testfiles)
|
| - d = defer.Deferred()
|
| -
|
| - i = 1
|
| - for i in range(count):
|
| - msg = testfiles[i]
|
| - reactor.callLater(self.SECONDS_PER_MESSAGE*i, self.deliverMail,
|
| - os.path.join(testfiles_dir, msg))
|
| - self.loop = task.LoopingCall(self.poll, self.changes, count, d)
|
| - self.loop.start(0.1)
|
| - t = reactor.callLater(self.SECONDS_PER_MESSAGE*count + 15,
|
| - d.errback, TimeOutError)
|
| - # TODO: verify the messages, should use code from test_mailparse but
|
| - # I'm not sure how to factor the verification routines out in a
|
| - # useful fashion
|
| -
|
| - #for i in range(count):
|
| - # msg, check = test_messages[i]
|
| - # check(self, self.changes[i])
|
| -
|
| - def _shutdown(res):
|
| - if t.active():
|
| - t.cancel()
|
| - self.loop.stop()
|
| - return res
|
| - d.addBoth(_shutdown)
|
| -
|
| - return d
|
| -
|
| - # TODO: it would be nice to set this timeout after counting the number of
|
| - # messages in buildbot/test/mail/msg*, but I suspect trial wants to have
|
| - # this number before the method starts, and maybe even before setUp()
|
| - testMaildir.timeout = SECONDS_PER_MESSAGE*9 + 15
|
| -
|
|
|