diff options
author | David Rousselie <dax@happycoders.org> | 2008-11-04 22:56:05 +0300 |
---|---|---|
committer | David Rousselie <dax@happycoders.org> | 2008-11-04 22:56:05 +0300 |
commit | b246d50564ac746df9727e316277bddc77acc1b6 (patch) | |
tree | 3fb57d78a6e91c5b644767ab3561b44e7cef4aea /src | |
parent | 5fd76ef4970a081a9f3f92028f2af287d4cc4cfc (diff) |
Allow sender to be None in FeederHandler
darcs-hash:20081104195605-86b55-53a7f9cebd1d5dbe41422fd0bbf0c8e5f1167cfa.gz
Diffstat (limited to 'src')
-rw-r--r-- | src/jcl/jabber/feeder.py | 3 | ||||
-rw-r--r-- | src/jcl/jabber/tests/feeder.py | 25 |
2 files changed, 20 insertions, 8 deletions
diff --git a/src/jcl/jabber/feeder.py b/src/jcl/jabber/feeder.py index 3e15e62..abf9a33 100644 --- a/src/jcl/jabber/feeder.py +++ b/src/jcl/jabber/feeder.py @@ -143,5 +143,6 @@ class FeederHandler(Handler): for _account in data: if _account.enabled: for data in self.feeder.feed(_account): - self.sender.send(_account, data) + if self.sender is not None: + self.sender.send(_account, data) return [] diff --git a/src/jcl/jabber/tests/feeder.py b/src/jcl/jabber/tests/feeder.py index 030a7c9..5e02217 100644 --- a/src/jcl/jabber/tests/feeder.py +++ b/src/jcl/jabber/tests/feeder.py @@ -23,7 +23,6 @@ import unittest import threading -import time from sqlobject import * @@ -252,7 +251,6 @@ class FeederHandler_TestCase(JCLTestCase): self.tick_handlers = [FeederHandler(FeederMock(), SenderMock())] def test_filter(self): - model.db_connect() account12 = ExampleAccount(user=User(jid="user2@test.com"), name="account12", jid="account12@jcl.test.com") @@ -268,10 +266,8 @@ class FeederHandler_TestCase(JCLTestCase): else: self.assertEquals(_account.name, "account11") self.assertEquals(i, 2) - model.db_disconnect() def test_handle(self): - model.db_connect() account11 = ExampleAccount(user=User(jid="user1@test.com"), name="account11", jid="account11@jcl.test.com") @@ -283,10 +279,8 @@ class FeederHandler_TestCase(JCLTestCase): self.assertEquals(len(sent), 2) self.assertEquals(sent[0], (account11, ("subject", "body"))) self.assertEquals(sent[1], (account12, ("subject", "body"))) - model.db_disconnect() def test_handle_disabled_account(self): - model.db_connect() account11 = ExampleAccount(user=User(jid="user1@test.com"), name="account11", jid="account11@jcl.test.com") @@ -298,7 +292,24 @@ class FeederHandler_TestCase(JCLTestCase): sent = self.tick_handlers[0].sender.sent self.assertEquals(len(sent), 1) self.assertEquals(sent[0], (account12, ("subject", "body"))) - model.db_disconnect() + + def test_handle_no_sender(self): + self.tick_handlers[0].sender = None + class FeederIncMock(object): + def __init__ (self): + self.called = 0 + def feed(self, _account): + self.called = self.called + 1 + return [self.called] + self.tick_handlers[0].feeder = FeederIncMock() + account11 = ExampleAccount(user=User(jid="user1@test.com"), + name="account11", + jid="account11@jcl.test.com") + account12 = ExampleAccount(user=User(jid="user2@test.com"), + name="account12", + jid="account12@jcl.test.com") + accounts = self.tick_handlers[0].handle(None, None, [account11, account12]) + self.assertEquals(self.tick_handlers[0].feeder.called, 2) def suite(): test_suite = unittest.TestSuite() |