[CalendarServer-changes] [1011] CalDAVTester/trunk

source_changes at macosforge.org source_changes at macosforge.org
Wed Jan 10 12:47:38 PST 2007


Revision: 1011
          http://trac.macosforge.org/projects/calendarserver/changeset/1011
Author:   cdaboo at apple.com
Date:     2007-01-10 12:47:38 -0800 (Wed, 10 Jan 2007)

Log Message:
-----------
More tests for availability stuff - including time-range queries to test indexing.

Modified Paths:
--------------
    CalDAVTester/trunk/Resource/availability/1.ics
    CalDAVTester/trunk/scripts/tests/availability.xml

Added Paths:
-----------
    CalDAVTester/trunk/Resource/availability/10.xml
    CalDAVTester/trunk/Resource/availability/2.ics
    CalDAVTester/trunk/Resource/availability/2.xml
    CalDAVTester/trunk/Resource/availability/3.ics
    CalDAVTester/trunk/Resource/availability/3.xml
    CalDAVTester/trunk/Resource/availability/4.ics
    CalDAVTester/trunk/Resource/availability/4.xml
    CalDAVTester/trunk/Resource/availability/5.xml
    CalDAVTester/trunk/Resource/availability/6.xml
    CalDAVTester/trunk/Resource/availability/7.xml
    CalDAVTester/trunk/Resource/availability/8.xml
    CalDAVTester/trunk/Resource/availability/9.xml

Modified: CalDAVTester/trunk/Resource/availability/1.ics
===================================================================
--- CalDAVTester/trunk/Resource/availability/1.ics	2007-01-10 20:02:34 UTC (rev 1010)
+++ CalDAVTester/trunk/Resource/availability/1.ics	2007-01-10 20:47:38 UTC (rev 1011)
@@ -24,13 +24,15 @@
 ORGANIZER:mailto:bernard at example.com
 UID:20061005T133225Z-00001 at example.com
 DTSTAMP:20061005T133225Z
-DTSTART;TZID=America/Montreal:20061002T000000
+DTSTART;TZID=America/Montreal:20060101T000000
+DTEND;TZID=America/Montreal:20060108T000000
 BEGIN:AVAILABLE
 UID:20061005T133225Z-00001-A at example.com
-SUMMARY:Monday to Friday from 9:00 to 17:00
-DTSTART;TZID=America/Montreal:20061002T090000
-DTEND;TZID=America/Montreal:20061002T170000
-RRULE:FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
+DTSTAMP:20061005T133225Z
+SUMMARY:Monday, Wednesday and Friday from 9:00 to 12:00
+DTSTART;TZID=America/Montreal:20060102T090000
+DTEND;TZID=America/Montreal:20060102T120000
+RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR
 END:AVAILABLE
 END:VAVAILABILITY
 END:VCALENDAR

Added: CalDAVTester/trunk/Resource/availability/10.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/10.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/10.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VEVENT">
+<C:time-range start="20060101T050000Z" end="20060105T000000Z"/>
+</C:comp-filter>
+<C:comp-filter name="VAVAILABILITY">
+<C:time-range start="20060101T050000Z" end="20060105T000000Z"/>
+</C:comp-filter>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/2.ics
===================================================================
--- CalDAVTester/trunk/Resource/availability/2.ics	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/2.ics	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,37 @@
+BEGIN:VCALENDAR
+CALSCALE:GREGORIAN
+PRODID:-//example.com//iCalendar 2.0//EN
+VERSION:2.0
+BEGIN:VTIMEZONE
+LAST-MODIFIED:20040110T032845Z
+TZID:America/Montreal
+BEGIN:DAYLIGHT
+DTSTART:20000404T020000
+RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4
+TZNAME:EDT
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0400
+END:DAYLIGHT
+BEGIN:STANDARD
+DTSTART:20001026T020000
+RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
+TZNAME:EST
+TZOFFSETFROM:-0400
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VAVAILABILITY
+ORGANIZER:mailto:bernard at example.com
+UID:20061005T133225Z-00002 at example.com
+DTSTAMP:20061005T133225Z
+DTEND;TZID=America/Montreal:20060101T000000
+BEGIN:AVAILABLE
+UID:20061005T133225Z-00001-A at example.com
+DTSTAMP:20061005T133225Z
+SUMMARY:Monday to Friday from 9:00 to 17:00
+DTSTART;TZID=America/Montreal:20000103T090000
+DTEND;TZID=America/Montreal:20000103T170000
+RRULE:FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
+END:AVAILABLE
+END:VAVAILABILITY
+END:VCALENDAR

Added: CalDAVTester/trunk/Resource/availability/2.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/2.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/2.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VAVAILABILITY"/>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/3.ics
===================================================================
--- CalDAVTester/trunk/Resource/availability/3.ics	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/3.ics	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,37 @@
+BEGIN:VCALENDAR
+CALSCALE:GREGORIAN
+PRODID:-//example.com//iCalendar 2.0//EN
+VERSION:2.0
+BEGIN:VTIMEZONE
+LAST-MODIFIED:20040110T032845Z
+TZID:America/Montreal
+BEGIN:DAYLIGHT
+DTSTART:20000404T020000
+RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4
+TZNAME:EDT
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0400
+END:DAYLIGHT
+BEGIN:STANDARD
+DTSTART:20001026T020000
+RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
+TZNAME:EST
+TZOFFSETFROM:-0400
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VAVAILABILITY
+ORGANIZER:mailto:bernard at example.com
+UID:20061005T133225Z-00003 at example.com
+DTSTAMP:20061005T133225Z
+DTSTART;TZID=America/Montreal:20060108T000000
+BEGIN:AVAILABLE
+UID:20061005T133225Z-00001-A at example.com
+DTSTAMP:20061005T133225Z
+SUMMARY:Monday to Friday from 9:00 to 17:00
+DTSTART;TZID=America/Montreal:20060109T090000
+DTEND;TZID=America/Montreal:20060109T170000
+RRULE:FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
+END:AVAILABLE
+END:VAVAILABILITY
+END:VCALENDAR

Added: CalDAVTester/trunk/Resource/availability/3.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/3.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/3.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VEVENT"/>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/4.ics
===================================================================
--- CalDAVTester/trunk/Resource/availability/4.ics	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/4.ics	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,32 @@
+BEGIN:VCALENDAR
+CALSCALE:GREGORIAN
+PRODID:-//Cyrusoft International\, Inc.//Mulberry v4.0//EN
+VERSION:2.0
+BEGIN:VTIMEZONE
+LAST-MODIFIED:20040110T032845Z
+TZID:US/Eastern
+BEGIN:DAYLIGHT
+DTSTART:20000404T020000
+RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4
+TZNAME:EDT
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0400
+END:DAYLIGHT
+BEGIN:STANDARD
+DTSTART:20001026T020000
+RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
+TZNAME:EST
+TZOFFSETFROM:-0400
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+DTSTAMP:20051222T205953Z
+CREATED:20060101T150000Z
+DTSTART;TZID=US/Eastern:20060102T120000
+DURATION:PT1H
+SUMMARY:event 1
+UID:54E181BC7CCC373042B28842 at ninevah.local
+CATEGORIES:cool
+END:VEVENT
+END:VCALENDAR

Added: CalDAVTester/trunk/Resource/availability/4.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/4.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/4.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VEVENT"/>
+<C:comp-filter name="VAVAILABILITY"/>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/5.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/5.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/5.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VAVAILABILITY">
+<C:time-range start="20050101T000000Z" end="20070101T000000Z"/>
+</C:comp-filter>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/6.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/6.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/6.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VAVAILABILITY">
+<C:time-range start="20050101T000000Z" end="20050201T000000Z"/>
+</C:comp-filter>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/7.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/7.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/7.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VAVAILABILITY">
+<C:time-range start="20060101T050000Z" end="20060105T000000Z"/>
+</C:comp-filter>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/8.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/8.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/8.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VAVAILABILITY">
+<C:time-range start="20060201T000000Z" end="20060301T000000Z"/>
+</C:comp-filter>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Added: CalDAVTester/trunk/Resource/availability/9.xml
===================================================================
--- CalDAVTester/trunk/Resource/availability/9.xml	                        (rev 0)
+++ CalDAVTester/trunk/Resource/availability/9.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
+<D:prop>
+<D:getetag/>
+<C:calendar-data/>
+</D:prop>
+<C:filter>
+<C:comp-filter name="VCALENDAR">
+<C:comp-filter name="VEVENT">
+<C:time-range start="20060101T050000Z" end="20060105T000000Z"/>
+</C:comp-filter>
+</C:comp-filter>
+</C:filter>
+</C:calendar-query>

Modified: CalDAVTester/trunk/scripts/tests/availability.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/availability.xml	2007-01-10 20:02:34 UTC (rev 1010)
+++ CalDAVTester/trunk/scripts/tests/availability.xml	2007-01-10 20:47:38 UTC (rev 1011)
@@ -23,7 +23,40 @@
 <caldavtest>
 	<description>Test PUT method in CalDAV</description>
 
-	<start/>
+	<start>
+		<request>
+			<method>PUT</method>
+			<ruri>1.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/availability/1.ics</filepath>
+			</data>
+		</request>
+		<request>
+			<method>PUT</method>
+			<ruri>2.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/availability/2.ics</filepath>
+			</data>
+		</request>
+		<request>
+			<method>PUT</method>
+			<ruri>3.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/availability/3.ics</filepath>
+			</data>
+		</request>
+		<request>
+			<method>PUT</method>
+			<ruri>4.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/availability/4.ics</filepath>
+			</data>
+		</request>
+	</start>
 	
 	<test-suite name='Capabilities'>
 		<test name='1' ignore='no'>
@@ -66,40 +99,189 @@
 		</test>
 	</test-suite>
 
-	<test-suite name='PUT VAVAILABILITY'>
+	<test-suite name='Verify PUT VAVAILABILITY'>
 		<test name='1' ignore='no'>
 			<description>PUT availability</description>
-			<request end-delete="yes">
-				<method>PUT</method>
+			<request>
+				<method>GET</method>
 				<ruri>1.ics</ruri>
+				<verify>
+					<callback>dataMatch</callback>
+					<arg>
+						<name>filepath</name>
+						<value>Resource/availability/1.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+	</test-suite>
+
+	<test-suite name='basic query reports' ignore='no'>
+		<test name='1' ignore='no'>
+			<description>query for resources with VCALENDAR &amp; VAVAILABILITY defined</description>
+			<request>
+				<method>REPORT</method>
 				<data>
-					<content-type>text/calendar; charset=utf-8</content-type>
-					<filepath>Resource/availability/1.ics</filepath>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/2.xml</filepath>
 				</data>
 				<verify>
-					<callback>statusCode</callback>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>1.ics</value>
+						<value>2.ics</value>
+						<value>3.ics</value>
+					</arg>
 				</verify>
+			</request>
+		</test>
+		<test name='2' ignore='no'>
+			<description>query for resources with VCALENDAR &amp; VEVENT defined</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/3.xml</filepath>
+				</data>
 				<verify>
-					<callback>header</callback>
+					<callback>multistatusItems</callback>
 					<arg>
-						<name>header</name>
-						<value>ETag$\"0dd19df90dcc91cf6c549ff7ca69ca3a\"</value>
+						<name>okhrefs</name>
+						<value>4.ics</value>
 					</arg>
 				</verify>
 			</request>
+		</test>
+		<test name='3' ignore='no'>
+			<description>query for resources with VCALENDAR &amp; VEVENT or VAVAILABILITY defined</description>
 			<request>
-				<method>GET</method>
-				<ruri>1.ics</ruri>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/4.xml</filepath>
+				</data>
 				<verify>
-					<callback>dataMatch</callback>
+					<callback>multistatusItems</callback>
 					<arg>
-						<name>filepath</name>
-						<value>Resource/availability/1.ics</value>
+						<name>okhrefs</name>
+						<value>1.ics</value>
+						<value>2.ics</value>
+						<value>3.ics</value>
+						<value>4.ics</value>
 					</arg>
 				</verify>
 			</request>
 		</test>
 	</test-suite>
+	
+	<test-suite name='time-range query reports' ignore='no'>
+		<test name='1' ignore='no'>
+			<description>query for VAVAILABILITYs within time range</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/5.xml</filepath>
+				</data>
+				<verify>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>1.ics</value>
+						<value>2.ics</value>
+						<value>3.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+		<test name='2' ignore='no'>
+			<description>query for VAVAILABILITYs within time range</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/6.xml</filepath>
+				</data>
+				<verify>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>2.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+		<test name='3' ignore='no'>
+			<description>query for VAVAILABILITYs within time range</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/7.xml</filepath>
+				</data>
+				<verify>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>1.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+		<test name='4' ignore='no'>
+			<description>query for VAVAILABILITYs within time range</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/8.xml</filepath>
+				</data>
+				<verify>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>3.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+		<test name='5' ignore='no'>
+			<description>query for VEVENTs within time range</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/9.xml</filepath>
+				</data>
+				<verify>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>4.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+		<test name='6' ignore='no'>
+			<description>query for VEVENTs and VAVAILABILITYs within time range</description>
+			<request>
+				<method>REPORT</method>
+				<data>
+					<content-type>text/xml; charset=utf-8</content-type>
+					<filepath>Resource/availability/10.xml</filepath>
+				</data>
+				<verify>
+					<callback>multistatusItems</callback>
+					<arg>
+						<name>okhrefs</name>
+						<value>1.ics</value>
+						<value>4.ics</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+	</test-suite>
 
 	<end/>
 	

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20070110/f1de90e2/attachment.html


More information about the calendarserver-changes mailing list