[CalendarServer-changes] [12744] CalendarServer/trunk/twistedcaldav/directory/test

source_changes at macosforge.org source_changes at macosforge.org
Wed Mar 12 11:23:54 PDT 2014


Revision: 12744
          http://trac.calendarserver.org//changeset/12744
Author:   dre at apple.com
Date:     2014-02-24 09:56:03 -0800 (Mon, 24 Feb 2014)
Log Message:
-----------
Conditional import of OD in unit tests

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

Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py	2014-02-21 21:57:24 UTC (rev 12743)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py	2014-02-24 17:56:03 UTC (rev 12744)
@@ -14,143 +14,147 @@
 # limitations under the License.
 ##
 
-from twistedcaldav.test.util import TestCase
-from twistedcaldav.directory.appleopendirectory import (buildQueries,
-    buildLocalQueriesFromTokens, OpenDirectoryService, buildNestedQueryFromTokens)
-from calendarserver.platform.darwin.od import dsattributes
+try:
+    from calendarserver.platform.darwin.od import dsattributes
+except ImportError:
+    pass
+else:
+    from twistedcaldav.test.util import TestCase
+    from twistedcaldav.directory.appleopendirectory import (buildQueries,
+        buildLocalQueriesFromTokens, OpenDirectoryService, buildNestedQueryFromTokens)
 
-class BuildQueryTests(TestCase):
+    class BuildQueryTests(TestCase):
 
-    def test_buildQuery(self):
-        self.assertEquals(
-            buildQueries(
-                [dsattributes.kDSStdRecordTypeUsers],
-                (
-                    ("firstName", "morgen", True, "starts-with"),
-                    ("lastName", "sagen", True, "starts-with"),
+        def test_buildQuery(self):
+            self.assertEquals(
+                buildQueries(
+                    [dsattributes.kDSStdRecordTypeUsers],
+                    (
+                        ("firstName", "morgen", True, "starts-with"),
+                        ("lastName", "sagen", True, "starts-with"),
+                    ),
+                    OpenDirectoryService._ODFields
                 ),
-                OpenDirectoryService._ODFields
-            ),
-            {
-                ('dsAttrTypeStandard:FirstName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
-                ('dsAttrTypeStandard:LastName', 'sagen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
-            }
-        )
-        self.assertEquals(
-            buildQueries(
-                [
-                    dsattributes.kDSStdRecordTypeUsers,
-                ],
-                (
-                    ("firstName", "morgen", True, "starts-with"),
-                    ("emailAddresses", "morgen", True, "contains"),
+                {
+                    ('dsAttrTypeStandard:FirstName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
+                    ('dsAttrTypeStandard:LastName', 'sagen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
+                }
+            )
+            self.assertEquals(
+                buildQueries(
+                    [
+                        dsattributes.kDSStdRecordTypeUsers,
+                    ],
+                    (
+                        ("firstName", "morgen", True, "starts-with"),
+                        ("emailAddresses", "morgen", True, "contains"),
+                    ),
+                    OpenDirectoryService._ODFields
                 ),
-                OpenDirectoryService._ODFields
-            ),
-            {
-                ('dsAttrTypeStandard:FirstName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
-                ('dsAttrTypeStandard:EMailAddress', 'morgen', True, 'contains') : [dsattributes.kDSStdRecordTypeUsers],
-            }
-        )
-        self.assertEquals(
-            buildQueries(
-                [
-                    dsattributes.kDSStdRecordTypeGroups,
-                ],
-                (
-                    ("firstName", "morgen", True, "starts-with"),
-                    ("lastName", "morgen", True, "starts-with"),
-                    ("fullName", "morgen", True, "starts-with"),
-                    ("emailAddresses", "morgen", True, "contains"),
+                {
+                    ('dsAttrTypeStandard:FirstName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
+                    ('dsAttrTypeStandard:EMailAddress', 'morgen', True, 'contains') : [dsattributes.kDSStdRecordTypeUsers],
+                }
+            )
+            self.assertEquals(
+                buildQueries(
+                    [
+                        dsattributes.kDSStdRecordTypeGroups,
+                    ],
+                    (
+                        ("firstName", "morgen", True, "starts-with"),
+                        ("lastName", "morgen", True, "starts-with"),
+                        ("fullName", "morgen", True, "starts-with"),
+                        ("emailAddresses", "morgen", True, "contains"),
+                    ),
+                    OpenDirectoryService._ODFields
                 ),
-                OpenDirectoryService._ODFields
-            ),
-            {
-                ('dsAttrTypeStandard:RealName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeGroups],
-                ('dsAttrTypeStandard:EMailAddress', 'morgen', True, 'contains') : [dsattributes.kDSStdRecordTypeGroups],
-            }
-        )
-        self.assertEquals(
-            buildQueries(
-                [
-                    dsattributes.kDSStdRecordTypeUsers,
-                    dsattributes.kDSStdRecordTypeGroups,
-                ],
-                (
-                    ("firstName", "morgen", True, "starts-with"),
-                    ("lastName", "morgen", True, "starts-with"),
-                    ("fullName", "morgen", True, "starts-with"),
-                    ("emailAddresses", "morgen", True, "contains"),
+                {
+                    ('dsAttrTypeStandard:RealName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeGroups],
+                    ('dsAttrTypeStandard:EMailAddress', 'morgen', True, 'contains') : [dsattributes.kDSStdRecordTypeGroups],
+                }
+            )
+            self.assertEquals(
+                buildQueries(
+                    [
+                        dsattributes.kDSStdRecordTypeUsers,
+                        dsattributes.kDSStdRecordTypeGroups,
+                    ],
+                    (
+                        ("firstName", "morgen", True, "starts-with"),
+                        ("lastName", "morgen", True, "starts-with"),
+                        ("fullName", "morgen", True, "starts-with"),
+                        ("emailAddresses", "morgen", True, "contains"),
+                    ),
+                    OpenDirectoryService._ODFields
                 ),
-                OpenDirectoryService._ODFields
-            ),
-            {
-                ('dsAttrTypeStandard:RealName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers, dsattributes.kDSStdRecordTypeGroups],
-                ('dsAttrTypeStandard:EMailAddress', 'morgen', True, 'contains') : [dsattributes.kDSStdRecordTypeUsers, dsattributes.kDSStdRecordTypeGroups],
-                ('dsAttrTypeStandard:FirstName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
-                ('dsAttrTypeStandard:LastName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
-            }
-        )
-        self.assertEquals(
-            buildQueries(
-                [
-                    dsattributes.kDSStdRecordTypeGroups,
-                ],
-                (
-                    ("firstName", "morgen", True, "starts-with"),
+                {
+                    ('dsAttrTypeStandard:RealName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers, dsattributes.kDSStdRecordTypeGroups],
+                    ('dsAttrTypeStandard:EMailAddress', 'morgen', True, 'contains') : [dsattributes.kDSStdRecordTypeUsers, dsattributes.kDSStdRecordTypeGroups],
+                    ('dsAttrTypeStandard:FirstName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
+                    ('dsAttrTypeStandard:LastName', 'morgen', True, 'starts-with') : [dsattributes.kDSStdRecordTypeUsers],
+                }
+            )
+            self.assertEquals(
+                buildQueries(
+                    [
+                        dsattributes.kDSStdRecordTypeGroups,
+                    ],
+                    (
+                        ("firstName", "morgen", True, "starts-with"),
+                    ),
+                    OpenDirectoryService._ODFields
                 ),
-                OpenDirectoryService._ODFields
-            ),
-            {
-            }
-        )
+                {
+                }
+            )
 
 
-    def test_buildLocalQueryFromTokens(self):
-        """
-        Verify the generating of the simpler queries passed to /Local/Default
-        """
-        results = buildLocalQueriesFromTokens([], OpenDirectoryService._ODFields)
-        self.assertEquals(results, None)
+        def test_buildLocalQueryFromTokens(self):
+            """
+            Verify the generating of the simpler queries passed to /Local/Default
+            """
+            results = buildLocalQueriesFromTokens([], OpenDirectoryService._ODFields)
+            self.assertEquals(results, None)
 
-        results = buildLocalQueriesFromTokens(["foo"], OpenDirectoryService._ODFields)
-        self.assertEquals(
-            results[0].generate(),
-            "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))"
-        )
+            results = buildLocalQueriesFromTokens(["foo"], OpenDirectoryService._ODFields)
+            self.assertEquals(
+                results[0].generate(),
+                "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))"
+            )
 
-        results = buildLocalQueriesFromTokens(["foo", "bar"], OpenDirectoryService._ODFields)
-        self.assertEquals(
-            results[0].generate(),
-            "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))"
-        )
-        self.assertEquals(
-            results[1].generate(),
-            "(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*))"
-        )
+            results = buildLocalQueriesFromTokens(["foo", "bar"], OpenDirectoryService._ODFields)
+            self.assertEquals(
+                results[0].generate(),
+                "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))"
+            )
+            self.assertEquals(
+                results[1].generate(),
+                "(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*))"
+            )
 
 
-    def test_buildNestedQueryFromTokens(self):
-        """
-        Verify the generating of the complex nested queries
-        """
-        query = buildNestedQueryFromTokens([], OpenDirectoryService._ODFields)
-        self.assertEquals(query, None)
+        def test_buildNestedQueryFromTokens(self):
+            """
+            Verify the generating of the complex nested queries
+            """
+            query = buildNestedQueryFromTokens([], OpenDirectoryService._ODFields)
+            self.assertEquals(query, None)
 
-        query = buildNestedQueryFromTokens(["foo"], OpenDirectoryService._ODFields)
-        self.assertEquals(
-            query.generate(),
-            "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))"
-        )
+            query = buildNestedQueryFromTokens(["foo"], OpenDirectoryService._ODFields)
+            self.assertEquals(
+                query.generate(),
+                "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))"
+            )
 
-        query = buildNestedQueryFromTokens(["foo", "bar"], OpenDirectoryService._ODFields)
-        self.assertEquals(
-            query.generate(),
-            "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)(dsAttrTypeStandard:RecordName=bar*)))"
-        )
+            query = buildNestedQueryFromTokens(["foo", "bar"], OpenDirectoryService._ODFields)
+            self.assertEquals(
+                query.generate(),
+                "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)(dsAttrTypeStandard:RecordName=bar*)))"
+            )
 
-        query = buildNestedQueryFromTokens(["foo", "bar", "baz"], OpenDirectoryService._ODFields)
-        self.assertEquals(
-            query.generate(),
-            "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)(dsAttrTypeStandard:RecordName=bar*))(|(dsAttrTypeStandard:RealName=*baz*)(dsAttrTypeStandard:EMailAddress=baz*)(dsAttrTypeStandard:RecordName=baz*)))"
-        )
+            query = buildNestedQueryFromTokens(["foo", "bar", "baz"], OpenDirectoryService._ODFields)
+            self.assertEquals(
+                query.generate(),
+                "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)(dsAttrTypeStandard:RecordName=bar*))(|(dsAttrTypeStandard:RealName=*baz*)(dsAttrTypeStandard:EMailAddress=baz*)(dsAttrTypeStandard:RecordName=baz*)))"
+            )

Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectorybacker.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectorybacker.py	2014-02-21 21:57:24 UTC (rev 12743)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_opendirectorybacker.py	2014-02-24 17:56:03 UTC (rev 12744)
@@ -14,38 +14,42 @@
 # limitations under the License.
 ##
 
-from twistedcaldav.directory.opendirectorybacker import VCardRecord
-from twistedcaldav.test.util import TestCase
+try:
+    from twistedcaldav.directory.opendirectorybacker import VCardRecord
+except ImportError:
+    pass
+else:
+    from twistedcaldav.test.util import TestCase
 
-class VCardRecordTestCase(TestCase):
+    class VCardRecordTestCase(TestCase):
 
 
-    def test_multiplePhoneNumbersAndEmailAddresses(self):
-        attributes = {
-            u'dsAttrTypeStandard:AppleMetaRecordName': ['uid=odtestamanda,cn=users,dc=dalek,dc=example,dc=com'],
-            u'dsAttrTypeStandard:ModificationTimestamp': '20111017170937Z',
-            u'dsAttrTypeStandard:PhoneNumber': ['408 555-1212', '415 555-1212'],
-            u'dsAttrTypeStandard:RecordType': ['dsRecTypeStandard:Users'],
-            u'dsAttrTypeStandard:AppleMetaNodeLocation': ['/LDAPv3/127.0.0.1'],
-            u'dsAttrTypeStandard:RecordName': ['odtestamanda'],
-            u'dsAttrTypeStandard:FirstName': 'Amanda',
-            u'dsAttrTypeStandard:GeneratedUID': '9DC04A70-E6DD-11DF-9492-0800200C9A66',
-            u'dsAttrTypeStandard:LastName': 'Test',
-            u'dsAttrTypeStandard:CreationTimestamp': '20110927182945Z',
-            u'dsAttrTypeStandard:EMailAddress': ['amanda at example.com', 'second at example.com'],
-            u'dsAttrTypeStandard:RealName': 'Amanda Test',
-        }
-        vcardRecord = VCardRecord(StubService(), attributes)
-        vcard = vcardRecord.vCard()
-        properties = set([prop.value() for prop in vcard.properties("TEL")])
-        self.assertEquals(properties, set(["408 555-1212", "415 555-1212"]))
-        properties = set([prop.value() for prop in vcard.properties("EMAIL")])
-        self.assertEquals(properties, set(["amanda at example.com", "second at example.com"]))
+        def test_multiplePhoneNumbersAndEmailAddresses(self):
+            attributes = {
+                u'dsAttrTypeStandard:AppleMetaRecordName': ['uid=odtestamanda,cn=users,dc=dalek,dc=example,dc=com'],
+                u'dsAttrTypeStandard:ModificationTimestamp': '20111017170937Z',
+                u'dsAttrTypeStandard:PhoneNumber': ['408 555-1212', '415 555-1212'],
+                u'dsAttrTypeStandard:RecordType': ['dsRecTypeStandard:Users'],
+                u'dsAttrTypeStandard:AppleMetaNodeLocation': ['/LDAPv3/127.0.0.1'],
+                u'dsAttrTypeStandard:RecordName': ['odtestamanda'],
+                u'dsAttrTypeStandard:FirstName': 'Amanda',
+                u'dsAttrTypeStandard:GeneratedUID': '9DC04A70-E6DD-11DF-9492-0800200C9A66',
+                u'dsAttrTypeStandard:LastName': 'Test',
+                u'dsAttrTypeStandard:CreationTimestamp': '20110927182945Z',
+                u'dsAttrTypeStandard:EMailAddress': ['amanda at example.com', 'second at example.com'],
+                u'dsAttrTypeStandard:RealName': 'Amanda Test',
+            }
+            vcardRecord = VCardRecord(StubService(), attributes)
+            vcard = vcardRecord.vCard()
+            properties = set([prop.value() for prop in vcard.properties("TEL")])
+            self.assertEquals(properties, set(["408 555-1212", "415 555-1212"]))
+            properties = set([prop.value() for prop in vcard.properties("EMAIL")])
+            self.assertEquals(properties, set(["amanda at example.com", "second at example.com"]))
 
 
 
-class StubService(object):
-    addDSAttrXProperties = False
-    directoryBackedAddressBook = None
-    appleInternalServer = False
-    realmName = "testing"
+    class StubService(object):
+        addDSAttrXProperties = False
+        directoryBackedAddressBook = None
+        appleInternalServer = False
+        realmName = "testing"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20140312/1f0ec05d/attachment.html>


More information about the calendarserver-changes mailing list