[CalendarServer-changes] [1013] CalendarServer/trunk/twistedcaldav/directory/test/test_principal.py

source_changes at macosforge.org source_changes at macosforge.org
Wed Jan 10 15:22:58 PST 2007


Revision: 1013
          http://trac.macosforge.org/projects/calendarserver/changeset/1013
Author:   wsanchez at apple.com
Date:     2007-01-10 15:22:57 -0800 (Wed, 10 Jan 2007)

Log Message:
-----------
More principalFor* tests.

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

Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_principal.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_principal.py	2007-01-10 20:57:08 UTC (rev 1012)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_principal.py	2007-01-10 23:22:57 UTC (rev 1013)
@@ -125,6 +125,26 @@
                     principalCollections = recordResource.principalCollections()
                     self.assertEquals(set((provisioningURL,)), set(pc.principalCollectionURL() for pc in principalCollections))
 
+    def test_allRecords(self):
+        """
+        Test of a test routine...
+        """
+        for provisioningResource, recordType, recordResource, record in self._allRecords():
+            self.assertEquals(recordResource.record, record)
+
+    ##
+    # DirectoryPrincipalProvisioningResource
+    ##
+
+    def test_principalForShortName(self):
+        """
+        DirectoryPrincipalProvisioningResource.principalForShortName()
+        """
+        for provisioningResource, recordType, recordResource, record in self._allRecords():
+            principal = provisioningResource.principalForShortName(recordType, record.shortName)
+            self.failIf(principal is None)
+            self.assertEquals(record, principal.record)
+
     def test_principalForUser(self):
         """
         DirectoryPrincipalProvisioningResource.principalForUser()
@@ -137,13 +157,46 @@
                 self.failIf(userResource is None)
                 self.assertEquals(user, userResource.record)
 
+    def test_principalForGUID(self):
+        """
+        DirectoryPrincipalProvisioningResource.principalForGUID()
+        """
+        for provisioningResource, recordType, recordResource, record in self._allRecords():
+            principal = provisioningResource.principalForGUID(record.guid)
+            self.failIf(principal is None)
+            self.assertEquals(record, principal.record)
+
     def test_principalForRecord(self):
         """
         DirectoryPrincipalProvisioningResource.principalForRecord()
         """
         for provisioningResource, recordType, recordResource, record in self._allRecords():
-            self.assertEquals(recordResource.record, record)
-                    
+            principal = provisioningResource.principalForRecord(record)
+            self.failIf(principal is None)
+            self.assertEquals(record, principal.record)
+
+    def test_principalForCalendarUserAddress(self):
+        """
+        DirectoryPrincipalProvisioningResource.principalForCalendarUserAddress()
+        """
+        for provisioningResource, recordType, recordResource, record in self._allRecords():
+            principalURL = recordResource.principalURL()
+            if principalURL.endswith("/"):
+                alternateURL = principalURL[:-1]
+            else:
+                alternateURL = principalURL + "/"
+
+            for address in tuple(record.calendarUserAddresses) + (principalURL, alternateURL):
+                principal = provisioningResource.principalForCalendarUserAddress(address)
+                self.failIf(principal is None)
+                self.assertEquals(record, principal.record)
+
+    # FIXME: Run DirectoryPrincipalProvisioningResource tests on DirectoryPrincipalTypeResource also
+
+    ##
+    # DirectoryPrincipalResource
+    ##
+
     def test_displayName(self):
         """
         DirectoryPrincipalResource.displayName()

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


More information about the calendarserver-changes mailing list