[CalendarServer-changes] [2534] CalendarServer/branches/memcache-reconnect-2/twistedcaldav/test/ test_memcachepool.py

source_changes at macosforge.org source_changes at macosforge.org
Wed Jun 4 10:01:23 PDT 2008


Revision: 2534
          http://trac.macosforge.org/projects/calendarserver/changeset/2534
Author:   dreid at apple.com
Date:     2008-06-04 10:01:22 -0700 (Wed, 04 Jun 2008)

Log Message:
-----------
Test that pending connections count against max clients.

Modified Paths:
--------------
    CalendarServer/branches/memcache-reconnect-2/twistedcaldav/test/test_memcachepool.py

Modified: CalendarServer/branches/memcache-reconnect-2/twistedcaldav/test/test_memcachepool.py
===================================================================
--- CalendarServer/branches/memcache-reconnect-2/twistedcaldav/test/test_memcachepool.py	2008-06-04 02:21:56 UTC (rev 2533)
+++ CalendarServer/branches/memcache-reconnect-2/twistedcaldav/test/test_memcachepool.py	2008-06-04 17:01:22 UTC (rev 2534)
@@ -380,3 +380,27 @@
         args[2].deferred.callback(p1)
 
         return d
+
+
+    def test_pendingConnectionsCountAgainstMaxClients(self):
+        """
+        Test that L{MemCachePool.performRequest} will not initiate a new
+        connection if there are pending connections that count towards max
+        clients.
+        """
+        self.pool.suggestMaxClients(1)
+
+        d = self.pool.performRequest('get', 'foo')
+
+        args, kwargs = self.reactor.calls.pop()
+
+        self.assertEquals(args[:2], (MC_ADDRESS.host, MC_ADDRESS.port))
+        self.failUnless(isinstance(args[2], MemCacheClientFactory))
+        self.assertEquals(kwargs, {})
+
+        d1 = self.pool.performRequest('get', 'bar')
+        self.assertEquals(self.reactor.calls, [])
+
+        args[2].deferred.callback(InMemoryMemcacheProtocol())
+
+        return d

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20080604/7d13b49c/attachment.htm 


More information about the calendarserver-changes mailing list