[CalendarServer-changes] [9384] CalendarServer/trunk/calendarserver/platform/darwin/od
source_changes at macosforge.org
source_changes at macosforge.org
Mon Jun 25 14:12:58 PDT 2012
Revision: 9384
http://trac.macosforge.org/projects/calendarserver/changeset/9384
Author: sagen at apple.com
Date: 2012-06-25 14:12:57 -0700 (Mon, 25 Jun 2012)
Log Message:
-----------
Decode compound query string from utf-8 to unicode
Modified Paths:
--------------
CalendarServer/trunk/calendarserver/platform/darwin/od/opendirectory.py
CalendarServer/trunk/calendarserver/platform/darwin/od/test/test_opendirectory.py
Modified: CalendarServer/trunk/calendarserver/platform/darwin/od/opendirectory.py
===================================================================
--- CalendarServer/trunk/calendarserver/platform/darwin/od/opendirectory.py 2012-06-25 16:27:34 UTC (rev 9383)
+++ CalendarServer/trunk/calendarserver/platform/darwin/od/opendirectory.py 2012-06-25 21:12:57 UTC (rev 9384)
@@ -347,7 +347,7 @@
recordType,
None,
0x210B, # adjustMatchType(matchType, casei),
- compound,
+ compound.decode("utf-8"),
attributeNames,
count,
None)
Modified: CalendarServer/trunk/calendarserver/platform/darwin/od/test/test_opendirectory.py
===================================================================
--- CalendarServer/trunk/calendarserver/platform/darwin/od/test/test_opendirectory.py 2012-06-25 16:27:34 UTC (rev 9383)
+++ CalendarServer/trunk/calendarserver/platform/darwin/od/test/test_opendirectory.py 2012-06-25 21:12:57 UTC (rev 9384)
@@ -704,6 +704,35 @@
# Master user:
self.assertTrue("odtestamanda" in recordNames)
+ def test_queryRecordsWithAttributes_list_nonascii(self):
+
+ directory = opendirectory.odInit("/Search")
+
+ expressions = [
+ dsquery.match(dsattributes.kDS1AttrFirstName, "\xe4\xbd\x90", "contains"),
+ dsquery.match(dsattributes.kDS1AttrLastName, "Test", "contains"),
+ ]
+
+ compound = dsquery.expression(dsquery.expression.AND, expressions).generate()
+
+ results = opendirectory.queryRecordsWithAttributes_list(
+ directory,
+ compound,
+ True,
+ [
+ dsattributes.kDSStdRecordTypeUsers,
+ dsattributes.kDSStdRecordTypeGroups,
+ dsattributes.kDSStdRecordTypeResources,
+ dsattributes.kDSStdRecordTypePlaces,
+ ],
+ USER_ATTRIBUTES,
+ count=0
+ )
+ recordNames = [x[0] for x in results]
+ # Master user:
+ self.assertTrue("odtestsatou" in recordNames)
+
+
def test_queryRecordsWithAttributes_list_local(self):
directory = opendirectory.odInit("/Search")
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20120625/cbfb906a/attachment.html>
More information about the calendarserver-changes
mailing list