def testNewRegistrationValueRoundtrip(self): Property.registerDefaultValue("X-SPECIAL-REGISTRATION", Value.VALUETYPE_TEXT) data = "X-SPECIAL-REGISTRATION:Text\\, escaped\\n" prop = Property.parseText(data) self.assertEqual(str(prop), "X-SPECIAL-REGISTRATION:Text\\, escaped\\n\r\n") prop = Property("X-SPECIAL-REGISTRATION", "Text, escaped\n") self.assertEqual(str(prop), "X-SPECIAL-REGISTRATION:Text\\, escaped\\n\r\n")
import twistedcaldav.customxml import twistedcaldav.timezonexml twistedcaldav # Shhh.. pyflakes # # DefaultHTTPHandler # from txweb2.http_headers import DefaultHTTPHandler, last, singleHeader DefaultHTTPHandler.updateParsers({ "If-Schedule-Tag-Match": (last, str), }) DefaultHTTPHandler.updateGenerators({ "Schedule-Tag": (str, singleHeader), }) # Do some PyCalendar init from pycalendar.icalendar.calendar import Calendar from pycalendar.icalendar.property import Property from pycalendar.vcard.card import Card from pycalendar.value import Value Calendar.setPRODID("-//CALENDARSERVER.ORG//NONSGML Version 1//EN") Card.setPRODID("-//CALENDARSERVER.ORG//NONSGML Version 1//EN") # These are properties we use directly and we want the default value type set for TEXT Property.registerDefaultValue("X-CALENDARSERVER-PRIVATE-COMMENT", Value.VALUETYPE_TEXT) Property.registerDefaultValue("X-CALENDARSERVER-ATTENDEE-COMMENT", Value.VALUETYPE_TEXT)
# # DefaultHTTPHandler # from txweb2.http_headers import DefaultHTTPHandler, last, singleHeader DefaultHTTPHandler.updateParsers({ "If-Schedule-Tag-Match": (last, str), }) DefaultHTTPHandler.updateGenerators({ "Schedule-Tag": (str, singleHeader), }) # Do some PyCalendar init from pycalendar.icalendar.calendar import Calendar from pycalendar.icalendar.property import Property from pycalendar.vcard.card import Card from pycalendar.value import Value Calendar.setPRODID("-//CALENDARSERVER.ORG//NONSGML Version 1//EN") Card.setPRODID("-//CALENDARSERVER.ORG//NONSGML Version 1//EN") # These are properties we use directly and we want the default value type set for TEXT Property.registerDefaultValue("X-CALENDARSERVER-PRIVATE-COMMENT", Value.VALUETYPE_TEXT) Property.registerDefaultValue("X-CALENDARSERVER-ATTENDEE-COMMENT", Value.VALUETYPE_TEXT) Property.registerDefaultValue("X-APPLE-TRAVEL-DURATION", Value.VALUETYPE_DURATION, always_write_value=True) Property.registerDefaultValue("X-APPLE-TRAVEL-START", Value.VALUETYPE_URI, always_write_value=True) Property.registerDefaultValue("X-APPLE-TRAVEL-RETURN-DURATION", Value.VALUETYPE_DURATION, always_write_value=True) Property.registerDefaultValue("X-APPLE-TRAVEL-RETURN", Value.VALUETYPE_URI, always_write_value=True)
# # DefaultHTTPHandler # from txweb2.http_headers import DefaultHTTPHandler, last, singleHeader DefaultHTTPHandler.updateParsers({ "If-Schedule-Tag-Match": (last, str), }) DefaultHTTPHandler.updateGenerators({ "Schedule-Tag": (str, singleHeader), }) # Do some PyCalendar init from pycalendar.icalendar.calendar import Calendar from pycalendar.icalendar.property import Property from pycalendar.vcard.card import Card from pycalendar.value import Value Calendar.setPRODID("-//CALENDARSERVER.ORG//NONSGML Version 1//EN") Card.setPRODID("-//CALENDARSERVER.ORG//NONSGML Version 1//EN") # These are properties we use directly and we want the default value type set for TEXT Property.registerDefaultValue("X-CALENDARSERVER-PRIVATE-COMMENT", Value.VALUETYPE_TEXT) Property.registerDefaultValue("X-CALENDARSERVER-ATTENDEE-COMMENT", Value.VALUETYPE_TEXT) Property.registerDefaultValue("X-APPLE-TRAVEL-DURATION", Value.VALUETYPE_DURATION, always_write_value=True) Property.registerDefaultValue("X-APPLE-TRAVEL-START", Value.VALUETYPE_DATETIME, always_write_value=True) Property.registerDefaultValue("X-APPLE-TRAVEL-RETURN-DURATION", Value.VALUETYPE_DURATION, always_write_value=True) Property.registerDefaultValue("X-APPLE-TRAVEL-RETURN", Value.VALUETYPE_DATETIME, always_write_value=True)