Uncommit unfinished changes
Monotone-Parent: 0efdaccbad84f567e4d9cc3ca0176e506620aefb Monotone-Revision: b539ed81e839a831ce07b7618690feb8ac799176 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2010-05-05T18:52:26 Monotone-Branch: ca.inverse.sogomaint-2.0.2
parent
97df7c4c45
commit
1a54a38194
|
@ -7812,17 +7812,16 @@ Index: sope-appserver/NGObjWeb/DAVPropMap.plist
|
||||||
===================================================================
|
===================================================================
|
||||||
--- sope-appserver/NGObjWeb/DAVPropMap.plist (revision 1664)
|
--- sope-appserver/NGObjWeb/DAVPropMap.plist (revision 1664)
|
||||||
+++ sope-appserver/NGObjWeb/DAVPropMap.plist (working copy)
|
+++ sope-appserver/NGObjWeb/DAVPropMap.plist (working copy)
|
||||||
@@ -157,6 +157,9 @@
|
@@ -157,6 +157,8 @@
|
||||||
"{urn:ietf:params:xml:ns:caldav}supported-calendar-data" =
|
"{urn:ietf:params:xml:ns:caldav}supported-calendar-data" =
|
||||||
davSupportedCalendarDataTypes;
|
davSupportedCalendarDataTypes;
|
||||||
"{urn:ietf:params:xml:ns:caldav}calendar-description" = davDescription;
|
"{urn:ietf:params:xml:ns:caldav}calendar-description" = davDescription;
|
||||||
+ "{urn:ietf:params:xml:ns:caldav}calendar-timezone" = davCalendarTimeZone;
|
+ "{urn:ietf:params:xml:ns:caldav}calendar-timezone" = davCalendarTimeZone;
|
||||||
+ "{urn:ietf:params:xml:ns:caldav}schedule-default-calendar-URL" = davScheduleDefaultCalendarURL;
|
+ "{urn:ietf:params:xml:ns:caldav}schedule-default-calendar-URL" = davScheduleDefaultCalendarURL;
|
||||||
+ "{urn:ietf:params:xml:ns:caldav}schedule-calendar-transp" = davScheduleCalendarTransparency;
|
|
||||||
|
|
||||||
/* CardDAV */
|
/* CardDAV */
|
||||||
"{urn:ietf:params:xml:ns:carddav}addressbook-home-set" = davAddressbookHomeSet;
|
"{urn:ietf:params:xml:ns:carddav}addressbook-home-set" = davAddressbookHomeSet;
|
||||||
@@ -168,6 +171,8 @@
|
@@ -168,6 +170,8 @@
|
||||||
"{http://calendarserver.org/ns/}dropbox-home-URL" = davDropboxHomeURL;
|
"{http://calendarserver.org/ns/}dropbox-home-URL" = davDropboxHomeURL;
|
||||||
"{http://calendarserver.org/ns/}notifications-URL" = davNotificationsURL;
|
"{http://calendarserver.org/ns/}notifications-URL" = davNotificationsURL;
|
||||||
"{http://calendarserver.org/ns/}getctag" = davCollectionTag;
|
"{http://calendarserver.org/ns/}getctag" = davCollectionTag;
|
||||||
|
|
|
@ -2285,11 +2285,6 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
|
||||||
return @"";
|
return @"";
|
||||||
}
|
}
|
||||||
|
|
||||||
- (NSString *) davScheduleCalendarTransparency
|
|
||||||
{
|
|
||||||
return @"coucou";
|
|
||||||
}
|
|
||||||
|
|
||||||
/* vevent UID handling */
|
/* vevent UID handling */
|
||||||
|
|
||||||
- (NSString *) resourceNameForEventUID: (NSString *) uid
|
- (NSString *) resourceNameForEventUID: (NSString *) uid
|
||||||
|
|
|
@ -37,45 +37,6 @@ def fetchUserInfo(login):
|
||||||
|
|
||||||
return (displayName, email_nodes[0].childNodes[0].nodeValue)
|
return (displayName, email_nodes[0].childNodes[0].nodeValue)
|
||||||
|
|
||||||
class CalDAVPropertiesTest(unittest.TestCase):
|
|
||||||
def setUp(self):
|
|
||||||
self.client = webdavlib.WebDAVClient(hostname, port,
|
|
||||||
username, password)
|
|
||||||
self.user_calendar = "/SOGo/dav/%s/Calendar/personal/" % username
|
|
||||||
|
|
||||||
def testDavScheduleCalendarTransparency(self):
|
|
||||||
"""{urn:ietf:params:xml:ns:caldav}schedule-calendar-transp"""
|
|
||||||
propfind = webdavlib.WebDAVPROPFIND(self.user_calendar,
|
|
||||||
["{urn:ietf:params:xml:ns:caldav}schedule-calendar-transp"],
|
|
||||||
0)
|
|
||||||
self.client.execute(propfind)
|
|
||||||
propfind.xpath_namespace = { "D": "DAV:",
|
|
||||||
"C": "urn:ietf:params:xml:ns:caldav" }
|
|
||||||
propstats = propfind.xpath_evaluate('/D:multistatus/D:response/D:propstat/D:prop/C:schedule-calendar-transp')
|
|
||||||
self.assertTrue(len(propstats) > 0,
|
|
||||||
"schedule-calendar-transp not present in response")
|
|
||||||
node = propstats[0]
|
|
||||||
status = propfind.xpath_evaluate('D:status',
|
|
||||||
node.parentNode.parentNode)[0] \
|
|
||||||
.childNodes[0].nodeValue[9:12]
|
|
||||||
self.assertEquals(status, "200",
|
|
||||||
"schedule-calendar-transp marked as 'Not Found' in response")
|
|
||||||
values = node.childNodes
|
|
||||||
nvalues = len(values)
|
|
||||||
self.assertEquals(nvalues, 1,
|
|
||||||
"expected 1 value (%d received)" % nvalues)
|
|
||||||
value = values[0]
|
|
||||||
print node.namespaceURI
|
|
||||||
self.assertEquals(value.__class__.__name__, "Element",
|
|
||||||
"schedule-calendar-transp must be an instance of" \
|
|
||||||
" %s, not %s" % ("Element", value.__class__.__name__))
|
|
||||||
self.assertEquals(value.namespaceURI, "urn:ietf:params:xml:ns:caldav",
|
|
||||||
"schedule-calendar-transp must have a value in namespace '%s', not '%s'", "urn:ietf:params:xml:ns:caldav", value.namespaceURI)
|
|
||||||
self.assertTrue(value.tagName == "opaque"
|
|
||||||
or value.tagName == "transparent",
|
|
||||||
"schedule-calendar-transp must be 'opaque' or" \
|
|
||||||
" 'transparent', not '%s'" % value.tagName)
|
|
||||||
|
|
||||||
class CalDAVITIPDelegationTest(unittest.TestCase):
|
class CalDAVITIPDelegationTest(unittest.TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.client = webdavlib.WebDAVClient(hostname, port,
|
self.client = webdavlib.WebDAVClient(hostname, port,
|
||||||
|
@ -198,7 +159,7 @@ class CalDAVITIPDelegationTest(unittest.TestCase):
|
||||||
% (email,
|
% (email,
|
||||||
compared_attendees[email], attendees[email]))
|
compared_attendees[email], attendees[email]))
|
||||||
|
|
||||||
def xtestInvitationDelegation(self):
|
def testInvitationDelegation(self):
|
||||||
""" invitation delegation """
|
""" invitation delegation """
|
||||||
|
|
||||||
# the invitation must not exist
|
# the invitation must not exist
|
||||||
|
|
|
@ -19,7 +19,8 @@ class WebDAVTest(unittest.TestCase):
|
||||||
propfind = webdavlib.WebDAVPROPFIND(resource,
|
propfind = webdavlib.WebDAVPROPFIND(resource,
|
||||||
["{DAV:}principal-collection-set"],
|
["{DAV:}principal-collection-set"],
|
||||||
0)
|
0)
|
||||||
propfind.xpath_namespace = { "D": "DAV:" } self.client.execute(propfind)
|
propfind.xpath_namespace = { "D": "DAV:" }
|
||||||
|
self.client.execute(propfind)
|
||||||
self.assertEquals(propfind.response["status"], 207)
|
self.assertEquals(propfind.response["status"], 207)
|
||||||
nodes = propfind.xpath_evaluate('/D:multistatus/D:response/D:propstat/D:prop/D:principal-collection-set/D:href',
|
nodes = propfind.xpath_evaluate('/D:multistatus/D:response/D:propstat/D:prop/D:principal-collection-set/D:href',
|
||||||
None)
|
None)
|
||||||
|
|
Loading…
Reference in New Issue