Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dax/jcl.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDavid Rousselie <dax@happycoders.org>2008-11-04 22:56:05 +0300
committerDavid Rousselie <dax@happycoders.org>2008-11-04 22:56:05 +0300
commitb246d50564ac746df9727e316277bddc77acc1b6 (patch)
tree3fb57d78a6e91c5b644767ab3561b44e7cef4aea /src
parent5fd76ef4970a081a9f3f92028f2af287d4cc4cfc (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.py3
-rw-r--r--src/jcl/jabber/tests/feeder.py25
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()