[CalendarServer-changes] [12636] twext/trunk/twext/enterprise
source_changes at macosforge.org
source_changes at macosforge.org
Wed Mar 12 11:21:07 PDT 2014
Revision: 12636
http://trac.calendarserver.org//changeset/12636
Author: cdaboo at apple.com
Date: 2014-02-10 13:32:13 -0800 (Mon, 10 Feb 2014)
Log Message:
-----------
Fix missing kwarg name.
Modified Paths:
--------------
twext/trunk/twext/enterprise/queue.py
twext/trunk/twext/enterprise/test/test_queue.py
Modified: twext/trunk/twext/enterprise/queue.py
===================================================================
--- twext/trunk/twext/enterprise/queue.py 2014-02-10 21:18:16 UTC (rev 12635)
+++ twext/trunk/twext/enterprise/queue.py 2014-02-10 21:32:13 UTC (rev 12636)
@@ -1219,7 +1219,7 @@
return self.workerPool
if self.peers and not onlyLocally:
- return sorted(self.peers, lambda p: p.currentLoadEstimate())[0]
+ return sorted(self.peers, key=lambda p: p.currentLoadEstimate())[0]
else:
return LocalPerformer(self.transactionFactory)
Modified: twext/trunk/twext/enterprise/test/test_queue.py
===================================================================
--- twext/trunk/twext/enterprise/test/test_queue.py 2014-02-10 21:18:16 UTC (rev 12635)
+++ twext/trunk/twext/enterprise/test/test_queue.py 2014-02-10 21:32:13 UTC (rev 12636)
@@ -56,6 +56,7 @@
)
+
class Clock(_Clock):
"""
More careful L{IReactorTime} fake which mimics the exception behavior of
@@ -447,6 +448,36 @@
self.assertEquals(performResult, [None])
+ def test_choosePerformerSorted(self):
+ """
+ If L{PeerConnectionPool.choosePerformer} is invoked make it
+ return the peer with the least load.
+ """
+ peer = PeerConnectionPool(None, None, 4322, schema)
+
+ class DummyPeer(object):
+ def __init__(self, name, load):
+ self.name = name
+ self.load = load
+
+ def currentLoadEstimate(self):
+ return self.load
+
+ apeer = DummyPeer("A", 1)
+ bpeer = DummyPeer("B", 0)
+ cpeer = DummyPeer("C", 2)
+ peer.addPeerConnection(apeer)
+ peer.addPeerConnection(bpeer)
+ peer.addPeerConnection(cpeer)
+
+ performer = peer.choosePerformer(onlyLocally=False)
+ self.assertEqual(performer, bpeer)
+
+ bpeer.load = 2
+ performer = peer.choosePerformer(onlyLocally=False)
+ self.assertEqual(performer, apeer)
+
+
@inlineCallbacks
def test_notBeforeWhenCheckingForLostWork(self):
"""
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20140312/38b7a170/attachment.html>
More information about the calendarserver-changes
mailing list