[CalendarServer-changes] [1034] CalendarServer/trunk/twistedcaldav/directory

source_changes at macosforge.org source_changes at macosforge.org
Thu Jan 11 18:13:12 PST 2007


Revision: 1034
          http://trac.macosforge.org/projects/calendarserver/changeset/1034
Author:   wsanchez at apple.com
Date:     2007-01-11 18:13:12 -0800 (Thu, 11 Jan 2007)

Log Message:
-----------
Keep track of delayed calls so that we can cancel them in the tests.

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
    CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectory.py

Modified: CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py	2007-01-12 01:42:56 UTC (rev 1033)
+++ CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py	2007-01-12 02:13:12 UTC (rev 1034)
@@ -61,6 +61,7 @@
         self.directory = directory
         self.node = node
         self._records = {}
+        self._delayedCalls = set()
 
         for recordType in self.recordTypes():
             self.recordsForType(recordType)
@@ -168,7 +169,10 @@
 
             def rot():
                 storage["status"] = "stale"
-            callLater(recordListCacheTimeout, rot)
+                for call in self._delayedCalls:
+                    if not call.active():
+                        self._delayedCalls.remove(call)
+            self._delayedCalls.add(callLater(recordListCacheTimeout, rot))
 
             self._records[recordType] = storage
 

Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectory.py	2007-01-12 01:42:56 UTC (rev 1033)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectory.py	2007-01-12 02:13:12 UTC (rev 1034)
@@ -48,5 +48,14 @@
 
         users = groups = locations = resources = {}
 
+        def setUp(self):
+            super(OpenDirectory, self).setUp()
+            self._service = OpenDirectoryService(node="/Local")
+
+        def tearDown(self):
+            for call in self._service._delayedCalls:
+                call.cancel()
+
         def service(self):
-            return OpenDirectoryService(node="/Local")
+            return self._service
+

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20070111/a7a62477/attachment.html


More information about the calendarserver-changes mailing list