[CalendarServer-changes] [10014] CalendarServer/trunk/twistedcaldav
source_changes at macosforge.org
source_changes at macosforge.org
Fri Nov 9 11:21:09 PST 2012
Revision: 10014
http://trac.calendarserver.org//changeset/10014
Author: sagen at apple.com
Date: 2012-11-09 11:21:09 -0800 (Fri, 09 Nov 2012)
Log Message:
-----------
Handle resource/location names with unicode values above 0xFFFF, e.g. emoji
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/test/test_xmlutil.py
CalendarServer/trunk/twistedcaldav/xmlutil.py
Modified: CalendarServer/trunk/twistedcaldav/test/test_xmlutil.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/test/test_xmlutil.py 2012-11-09 03:47:32 UTC (rev 10013)
+++ CalendarServer/trunk/twistedcaldav/test/test_xmlutil.py 2012-11-09 19:21:09 UTC (rev 10014)
@@ -17,7 +17,7 @@
import twistedcaldav.test.util
from cStringIO import StringIO
from twistedcaldav.xmlutil import readXML, writeXML, addSubElement,\
- changeSubElementText
+ changeSubElementText, createElement, elementToXML, readXMLString
class XMLUtil(twistedcaldav.test.util.TestCase):
"""
@@ -139,3 +139,14 @@
changeSubElementText(root, "new", "new text")
self._checkXML(root, XMLUtil.data6)
+
+ def test_emoji(self):
+ """
+ Verify we can serialize and parse unicode values above 0xFFFF
+ """
+ name = u"Emoji \U0001F604"
+ elem = createElement("test", text=name)
+ xmlString1 = elementToXML(elem)
+ parsed = readXMLString(xmlString1)[1]
+ xmlString2 = elementToXML(parsed)
+ self.assertEquals(xmlString1, xmlString2)
Modified: CalendarServer/trunk/twistedcaldav/xmlutil.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/xmlutil.py 2012-11-09 03:47:32 UTC (rev 10013)
+++ CalendarServer/trunk/twistedcaldav/xmlutil.py 2012-11-09 19:21:09 UTC (rev 10014)
@@ -56,7 +56,7 @@
return etree, etree.getroot()
def elementToXML(element):
- return XML.tostring(element)
+ return XML.tostring(element, "utf-8")
def writeXML(xmlfile, root):
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20121109/eabdda7d/attachment.html>
More information about the calendarserver-changes
mailing list