[CalendarServer-changes] [6353] CalDAVTester/trunk

source_changes at macosforge.org source_changes at macosforge.org
Thu Sep 23 12:00:54 PDT 2010


Revision: 6353
          http://trac.macosforge.org/projects/calendarserver/changeset/6353
Author:   cdaboo at apple.com
Date:     2010-09-23 12:00:53 -0700 (Thu, 23 Sep 2010)
Log Message:
-----------
More Py2.7 element tree fixes.

Modified Paths:
--------------
    CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml
    CalDAVTester/trunk/scripts/server/serverinfo-template.xml
    CalDAVTester/trunk/scripts/server/serverinfo.xml
    CalDAVTester/trunk/scripts/server/sslserverinfo.xml
    CalDAVTester/trunk/scripts/tests/CalDAV/implicitscenario1.xml
    CalDAVTester/trunk/scripts/tests/CalDAV/implicitschedulechanges.xml
    CalDAVTester/trunk/scripts/tests/CalDAV/implicittodo.xml
    CalDAVTester/trunk/scripts/tests/CalDAV/privatecomments.xml
    CalDAVTester/trunk/verifiers/propfindValues.py
    CalDAVTester/trunk/verifiers/xmlElementMatch.py

Modified: CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/server/serverinfo-partitioning.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -80,6 +80,18 @@
 			<key>$verify-property-prefix:</key>
 			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}propstat/{DAV:}prop</value>
 		</substitution>
+		<substitution>
+			<key>$CALDAV:</key>
+			<value>urn:ietf:params:xml:ns:caldav</value>
+		</substitution>
+		<substitution>
+			<key>$CARDDAV:</key>
+			<value>urn:ietf:params:xml:ns:carddav</value>
+		</substitution>
+		<substitution>
+			<key>$CS:</key>
+			<value>http://calendarserver.org/ns/</value>
+		</substitution>
 
 		<!-- Server configuration settings -->
 		<substitution>

Modified: CalDAVTester/trunk/scripts/server/serverinfo-template.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo-template.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/server/serverinfo-template.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -82,6 +82,18 @@
 			<key>$verify-property-prefix:</key>
 			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}propstat/{DAV:}prop</value>
 		</substitution>
+		<substitution>
+			<key>$CALDAV:</key>
+			<value>urn:ietf:params:xml:ns:caldav</value>
+		</substitution>
+		<substitution>
+			<key>$CARDDAV:</key>
+			<value>urn:ietf:params:xml:ns:carddav</value>
+		</substitution>
+		<substitution>
+			<key>$CS:</key>
+			<value>http://calendarserver.org/ns/</value>
+		</substitution>
 
 		<!-- Server configuration settings -->
 		<substitution>

Modified: CalDAVTester/trunk/scripts/server/serverinfo.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/serverinfo.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/server/serverinfo.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -82,6 +82,18 @@
 			<key>$verify-property-prefix:</key>
 			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}propstat/{DAV:}prop</value>
 		</substitution>
+		<substitution>
+			<key>$CALDAV:</key>
+			<value>urn:ietf:params:xml:ns:caldav</value>
+		</substitution>
+		<substitution>
+			<key>$CARDDAV:</key>
+			<value>urn:ietf:params:xml:ns:carddav</value>
+		</substitution>
+		<substitution>
+			<key>$CS:</key>
+			<value>http://calendarserver.org/ns/</value>
+		</substitution>
 
 		<!-- Server configuration settings -->
 		<substitution>

Modified: CalDAVTester/trunk/scripts/server/sslserverinfo.xml
===================================================================
--- CalDAVTester/trunk/scripts/server/sslserverinfo.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/server/sslserverinfo.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -81,6 +81,18 @@
 			<key>$verify-property-prefix:</key>
 			<value>/{DAV:}multistatus/{DAV:}response/{DAV:}propstat/{DAV:}prop</value>
 		</substitution>
+		<substitution>
+			<key>$CALDAV:</key>
+			<value>urn:ietf:params:xml:ns:caldav</value>
+		</substitution>
+		<substitution>
+			<key>$CARDDAV:</key>
+			<value>urn:ietf:params:xml:ns:carddav</value>
+		</substitution>
+		<substitution>
+			<key>$CS:</key>
+			<value>http://calendarserver.org/ns/</value>
+		</substitution>
 
 		<!-- Server configuration settings -->
 		<substitution>

Modified: CalDAVTester/trunk/scripts/tests/CalDAV/implicitscenario1.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CalDAV/implicitscenario1.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/tests/CalDAV/implicitscenario1.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -107,10 +107,10 @@
 					<filepath>Resource/CalDAV/implicit/scenario1/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -207,10 +207,13 @@
 					<filepath>Resource/CalDAV/implicit/scenario1/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -309,10 +312,12 @@
 					<filepath>Resource/CalDAV/implicit/scenario1/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="ATTENDEE"/><changed-property name="SUMMARY"/></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="SUMMARY"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -404,10 +409,13 @@
 					<filepath>Resource/CalDAV/implicit/scenario1/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -673,10 +681,10 @@
 					<filepath>Resource/CalDAV/implicit/scenario1/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><cancel/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}cancel</value>
 					</arg>
 				</verify>
 			</request>

Modified: CalDAVTester/trunk/scripts/tests/CalDAV/implicitschedulechanges.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CalDAV/implicitschedulechanges.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/tests/CalDAV/implicitschedulechanges.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -92,10 +92,10 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -153,7 +153,7 @@
 					<callback>statusCode</callback>
 				</verify>
 			</request>
-			<request user="$userid2:" pswd="$pswd2:" print-response='no'>
+			<request user="$userid2:" pswd="$pswd2:" print-response='yes'>
 				<method>PROPFIND</method>
 				<ruri>$</ruri>
 				<header>
@@ -165,10 +165,11 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="SUMMARY"/></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="SUMMARY"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -238,10 +239,13 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="DTEND"><changed-parameter name="TZID"/></changed-property><changed-property name="DTSTART"><changed-parameter name="TZID"/></changed-property></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DTSTART"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DTEND"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="TZID"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -311,10 +315,14 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="DTEND"><changed-parameter name="TZID"/><changed-parameter name="VALUE"/></changed-property><changed-property name="DTSTART"><changed-parameter name="TZID"/><changed-parameter name="VALUE"/></changed-property></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DTSTART"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DTEND"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="TZID"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="VALUE"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -406,10 +414,10 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -486,10 +494,14 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property><changed-property name="X-CALENDARSERVER-PRIVATE-COMMENT"/></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="X-CALENDARSERVER-PRIVATE-COMMENT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -559,10 +571,12 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="ATTENDEE"/><changed-property name="SUMMARY"/></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="SUMMARY"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -654,10 +668,10 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/attendeeinstance/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -734,10 +748,13 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/attendeeinstance/3.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><recurrenceid>20060102T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060102T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -829,10 +846,10 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/1.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -909,10 +926,15 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/1.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence><recurrence><recurrenceid>20060102T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence><recurrence><recurrenceid>20060104T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060102T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060104T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -982,10 +1004,15 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/1.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="ATTENDEE"/><changed-property name="SUMMARY"/></changes></recurrence><recurrence><recurrenceid>20060102T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"/></changes></recurrence><recurrence><recurrenceid>20060104T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"/><changed-property name="DTEND"/><changed-property name="DTSTART"/></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}recurrenceid[=20060102T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}recurrenceid[=20060104T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="SUMMARY"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DTSTART"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DTEND"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -1077,10 +1104,10 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/1.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -1157,10 +1184,15 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/1.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence><recurrence><recurrenceid>20060101T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence><recurrence><recurrenceid>20060104T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060101T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060104T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -1237,10 +1269,13 @@
 					<filepath>Resource/CalDAV/implicit/schedulechanges/1.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>

Modified: CalDAVTester/trunk/scripts/tests/CalDAV/implicittodo.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CalDAV/implicittodo.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/tests/CalDAV/implicittodo.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -106,10 +106,10 @@
 					<filepath>Resource/CalDAV/implicit/todo/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><create/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}create</value>
 					</arg>
 				</verify>
 			</request>
@@ -210,10 +210,13 @@
 					<filepath>Resource/CalDAV/implicit/todo/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -321,10 +324,12 @@
 					<filepath>Resource/CalDAV/implicit/todo/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><update><recurrence><master/><changes><changed-property name="ATTENDEE"/><changed-property name="DUE"/></changes></recurrence></update></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}update/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="DUE"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -425,10 +430,13 @@
 					<filepath>Resource/CalDAV/implicit/todo/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -724,10 +732,10 @@
 					<filepath>Resource/CalDAV/implicit/todo/simple/12.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><cancel/></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}cancel</value>
 					</arg>
 				</verify>
 			</request>

Modified: CalDAVTester/trunk/scripts/tests/CalDAV/privatecomments.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CalDAV/privatecomments.xml	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/scripts/tests/CalDAV/privatecomments.xml	2010-09-23 19:00:53 UTC (rev 6353)
@@ -1098,10 +1098,15 @@
 					<filepath>Resource/CalDAV/privatecomments/42.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><master/><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property><changed-property name="X-CALENDARSERVER-PRIVATE-COMMENT"/></changes></recurrence><recurrence><recurrenceid>20060102T150000Z</recurrenceid><changes><changed-property name="ATTENDEE"><changed-parameter name="PARTSTAT"/></changed-property><changed-property name="X-CALENDARSERVER-PRIVATE-COMMENT"/></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}master</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060102T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="ATTENDEE"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property/{$CS:}changed-parameter[@name="PARTSTAT"]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="X-CALENDARSERVER-PRIVATE-COMMENT"]</value>
 					</arg>
 				</verify>
 			</request>
@@ -1206,10 +1211,12 @@
 					<filepath>Resource/CalDAV/privatecomments/42.xml</filepath>
 				</data>
 				<verify>
-					<callback>propfindValues</callback>
+					<callback>xmlElementMatch</callback>
 					<arg>
-						<name>props</name>
-						<value><![CDATA[{http://calendarserver.org/ns/}schedule-changes$<dtstamp xmlns="http://calendarserver.org/ns/">.*</dtstamp><action xmlns="http://calendarserver.org/ns/"><reply><attendee>$cuaddrurn2:</attendee><recurrence><recurrenceid>20060102T150000Z</recurrenceid><changes><changed-property name="X-CALENDARSERVER-PRIVATE-COMMENT"/></changes></recurrence></reply></action>]]></value>
+						<name>exists</name>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}attendee[=$cuaddrurn2:]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}recurrenceid[=20060102T150000Z]</value>
+						<value>$verify-property-prefix:/{$CS:}schedule-changes/{$CS:}action/{$CS:}reply/{$CS:}recurrence/{$CS:}changes/{$CS:}changed-property[@name="X-CALENDARSERVER-PRIVATE-COMMENT"]</value>
 					</arg>
 				</verify>
 			</request>

Modified: CalDAVTester/trunk/verifiers/propfindValues.py
===================================================================
--- CalDAVTester/trunk/verifiers/propfindValues.py	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/verifiers/propfindValues.py	2010-09-23 19:00:53 UTC (rev 6353)
@@ -32,13 +32,11 @@
         def normalizeXML(value):
             
             if value[0] == '<':
-                value = "<CDTdummy>" + value + "</CDTdummy>"
                 try:
                     tree = ElementTree(file=StringIO(value))
                 except Exception:
                     return False, "           Could not parse XML value: %s\n" % (value,)
                 value = tostring(tree.getroot())
-                value = value.replace("<CDTdummy>", "").replace("</CDTdummy>", "")
             return value
             
         # Get property arguments and split on $ delimited for name, value tuples

Modified: CalDAVTester/trunk/verifiers/xmlElementMatch.py
===================================================================
--- CalDAVTester/trunk/verifiers/xmlElementMatch.py	2010-09-23 15:37:06 UTC (rev 6352)
+++ CalDAVTester/trunk/verifiers/xmlElementMatch.py	2010-09-23 19:00:53 UTC (rev 6353)
@@ -52,6 +52,7 @@
         result = True
         resulttxt = ""
         for path in exists:
+            
             if '[' in path:
                 actual_path, tests = path.split('[', 1)
             else:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20100923/1c45677c/attachment-0001.html>


More information about the calendarserver-changes mailing list