[CalendarServer-changes] [1841]
source_changes at macosforge.org
source_changes at macosforge.org
Tue Sep 4 13:54:31 PDT 2007
Revision: 1841
http://trac.macosforge.org/projects/calendarserver/changeset/1841
Author: cdaboo at apple.com
Date: 2007-09-04 13:54:29 -0700 (Tue, 04 Sep 2007)
Log Message:
-----------
Fixes, plus some tests for REQUEST.
Modified Paths:
--------------
CalendarServer/branches/users/cdaboo/better-itip-1835/twistedcaldav/itip.py
Added Paths:
-----------
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/1.ics
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/2.ics
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/3.ics
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/4.ics
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/5.ics
CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/6.ics
CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecurrequest.xml
Removed Paths:
-------------
CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecur.xml
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/1.ics
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/1.ics (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/1.ics 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,18 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+METHOD:REQUEST
+PRODID:-//ORACLE//NONSGML Windows Desktop Calendar 10.1.2.0.5.278//EN
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+DTSTART:20060208T200000Z
+DTEND:20060208T210000Z
+ATTENDEE;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+RRULE:FREQ=WEEKLY;COUNT=20
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/2.ics
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/2.ics (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/2.ics 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,17 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//ORACLE//NONSGML Windows Desktop Calendar 10.1.2.0.5.278//EN
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+DTSTART:20060208T200000Z
+DTEND:20060208T210000Z
+ATTENDEE;PARTSTAT=ACCEPTED;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+RRULE:FREQ=WEEKLY;COUNT=20
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/3.ics
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/3.ics (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/3.ics 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,19 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+METHOD:REPLY
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+DTSTART:20060208T200000Z
+DTEND:20060208T210000Z
+ATTENDEE;PARTSTAT=ACCEPTED;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+REQUEST-STATUS:2.0\; Success.
+RRULE:FREQ=WEEKLY;COUNT=20
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/4.ics
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/4.ics (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/4.ics 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,20 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+METHOD:REQUEST
+PRODID:-//ORACLE//NONSGML Windows Desktop Calendar 10.1.2.0.5.278//EN
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+DTSTART:20060208T210000Z
+DTEND:20060208T220000Z
+ATTENDEE;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+RECURRENCE-ID:20060215T200000Z
+RRULE:FREQ=WEEKLY;COUNT=20
+SEQUENCE:1
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/5.ics
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/5.ics (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/5.ics 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,33 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//ORACLE//NONSGML Windows Desktop Calendar 10.1.2.0.5.278//EN
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+DTSTART:20060208T200000Z
+DTEND:20060208T210000Z
+ATTENDEE;PARTSTAT=ACCEPTED;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+RRULE:FREQ=WEEKLY;COUNT=20
+SEQUENCE:1
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+RECURRENCE-ID:20060215T200000Z
+DTSTART:20060208T210000Z
+DTEND:20060208T220000Z
+ATTENDEE;PARTSTAT=ACCEPTED;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+RRULE:FREQ=WEEKLY;COUNT=20
+SEQUENCE:1
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/6.ics
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/6.ics (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/Resource/scheduleautorecurrequest/6.ics 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,21 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+METHOD:REPLY
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:20060110T231240Z-4011c71-187-6f73-1
+RECURRENCE-ID:20060215T200000Z
+DTSTART:20060208T210000Z
+DTEND:20060208T220000Z
+ATTENDEE;PARTSTAT=ACCEPTED;CN=Resource 01:$rcuaddralt1:
+CREATED:20060110T231240Z
+DESCRIPTION:+1 605 990 0100\nAccess: 879307#
+DTSTAMP:20060309T185105Z
+ORGANIZER;CN=Cyrus Daboo:$cuaddralt1:
+REQUEST-STATUS:2.0\; Success.
+RRULE:FREQ=WEEKLY;COUNT=20
+SEQUENCE:1
+SUMMARY:TC Realtime
+TRANSP:OPAQUE
+END:VEVENT
+END:VCALENDAR
Deleted: CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecur.xml
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecur.xml 2007-09-04 17:19:41 UTC (rev 1840)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecur.xml 2007-09-04 20:54:29 UTC (rev 1841)
@@ -1,640 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-
-<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
-
-<!--
- Copyright (c) 2006-2007 Apple Inc. All rights reserved.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- DRI: Cyrus Daboo, cdaboo at apple.com
- -->
-
-<caldavtest>
- <description>Test iTIP with recurrence instances</description>
-
- <start>
- <request>
- <method>DELETEALL</method>
- <ruri>$pathprefix:/$outbox:/</ruri>
- </request>
- <request>
- <method>DELETEALL</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- </request>
- <request user="$useradmin:" pswd="$pswdadmin:">
- <method>DELETEALL</method>
- <ruri>$rpathprefix1:/$outbox:/</ruri>
- </request>
- <request user="$useradmin:" pswd="$pswdadmin:">
- <method>DELETEALL</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- </request>
- <request user="$useradmin:" pswd="$pswdadmin:">
- <method>DELETEALL</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- </request>
- </start>
-
- <test-suite name='POST recurring' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/1.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>6</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/2.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>1</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST cancel one instance' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/3.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>4</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/4.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>1</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST cancel multiple instances' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/5.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>4</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/6.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>1</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST cancel wrong SEQUENCE' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/7.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>4</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/6.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>1</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST cancel no match UID' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/8.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>4</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>1</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>1</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST recurring with overridden instances' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/9.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>6</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/10.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>2</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST cancel one overridden instance' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/11.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>4</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/12.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>2</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <test-suite name='POST cancel multiple instances' ignore='no'>
- <test name='1' ignore='no'>
- <description>Do POST</description>
- <request>
- <method>POST</method>
- <header>
- <name>Originator</name>
- <value>$cuaddralt1:</value>
- </header>
- <header>
- <name>Recipient</name>
- <value>$rcuaddralt1:</value>
- </header>
- <ruri>$pathprefix:/$outbox:/</ruri>
- <data>
- <content-type>text/calendar; charset=utf-8</content-type>
- <filepath>Resource/scheduleautorecur/13.ics</filepath>
- </data>
- <verify>
- <callback>statusCode</callback>
- </verify>
- </request>
- <request>
- <method>DELAY</method>
- <ruri>4</ruri>
- </request>
- </test>
- <test name='2' ignore='no'>
- <description>No items in resource01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>0</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='3' ignore='no'>
- <description>One item in resource01 Calendar</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>GETNEW</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- <verify>
- <callback>dataMatch</callback>
- <arg>
- <name>filepath</name>
- <value>Resource/scheduleautorecur/14.ics</value>
- </arg>
- </verify>
- </request>
- </test>
- <test name='4' ignore='no'>
- <description>One item in user01 Inbox</description>
- <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
- <method>PROPFIND</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- <verify>
- <callback>multistatusItems</callback>
- <arg>
- <name>count</name>
- <value>2</value>
- </arg>
- </verify>
- </request>
- </test>
- </test-suite>
-
- <end>
- <request>
- <method>DELETEALL</method>
- <ruri>$pathprefix:/$outbox:/</ruri>
- </request>
- <request>
- <method>DELETEALL</method>
- <ruri>$pathprefix:/$inbox:/</ruri>
- </request>
- <request user="$useradmin:" pswd="$pswdadmin:">
- <method>DELETEALL</method>
- <ruri>$rpathprefix1:/$outbox:/</ruri>
- </request>
- <request user="$useradmin:" pswd="$pswdadmin:">
- <method>DELETEALL</method>
- <ruri>$rpathprefix1:/$inbox:/</ruri>
- </request>
- <request user="$useradmin:" pswd="$pswdadmin:">
- <method>DELETEALL</method>
- <ruri>$rpathprefix1:/calendar/</ruri>
- </request>
- </end>
-
-</caldavtest>
Added: CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecurrequest.xml
===================================================================
--- CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecurrequest.xml (rev 0)
+++ CalDAVTester/branches/users/cdaboo/better-itip-1837/scripts/tests/schedulepostautorecurrequest.xml 2007-09-04 20:54:29 UTC (rev 1841)
@@ -0,0 +1,214 @@
+<?xml version="1.0" standalone="no"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006-2007 Apple Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest>
+ <description>Test iTIP with recurrence instances</description>
+
+ <start>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$pathprefix:/$outbox:/</ruri>
+ </request>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$pathprefix:/$inbox:/</ruri>
+ </request>
+ <request user="$useradmin:" pswd="$pswdadmin:">
+ <method>DELETEALL</method>
+ <ruri>$rpathprefix1:/$outbox:/</ruri>
+ </request>
+ <request user="$useradmin:" pswd="$pswdadmin:">
+ <method>DELETEALL</method>
+ <ruri>$rpathprefix1:/$inbox:/</ruri>
+ </request>
+ <request user="$useradmin:" pswd="$pswdadmin:">
+ <method>DELETEALL</method>
+ <ruri>$rpathprefix1:/calendar/</ruri>
+ </request>
+ </start>
+
+ <test-suite name='POST recurring' ignore='no'>
+ <test name='1' ignore='no'>
+ <description>Do POST</description>
+ <request>
+ <method>POST</method>
+ <header>
+ <name>Originator</name>
+ <value>$cuaddralt1:</value>
+ </header>
+ <header>
+ <name>Recipient</name>
+ <value>$rcuaddralt1:</value>
+ </header>
+ <ruri>$pathprefix:/$outbox:/</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/scheduleautorecurrequest/1.ics</filepath>
+ </data>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ <request>
+ <method>DELAY</method>
+ <ruri>6</ruri>
+ </request>
+ </test>
+ <test name='2' ignore='no'>
+ <description>No items in resource01 Inbox</description>
+ <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
+ <method>PROPFIND</method>
+ <ruri>$rpathprefix1:/$inbox:/</ruri>
+ <verify>
+ <callback>multistatusItems</callback>
+ <arg>
+ <name>count</name>
+ <value>0</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='3' ignore='no'>
+ <description>One item in resource01 Calendar</description>
+ <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
+ <method>GETNEW</method>
+ <ruri>$rpathprefix1:/calendar/</ruri>
+ <verify>
+ <callback>dataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/scheduleautorecurrequest/2.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='4' ignore='no'>
+ <description>One item in user01 Inbox</description>
+ <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
+ <method>GETNEW</method>
+ <ruri>$pathprefix:/$inbox:/</ruri>
+ <verify>
+ <callback>dataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/scheduleautorecurrequest/3.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
+ <test-suite name='POST modify one instance' ignore='no'>
+ <test name='1' ignore='no'>
+ <description>Do POST</description>
+ <request>
+ <method>POST</method>
+ <header>
+ <name>Originator</name>
+ <value>$cuaddralt1:</value>
+ </header>
+ <header>
+ <name>Recipient</name>
+ <value>$rcuaddralt1:</value>
+ </header>
+ <ruri>$pathprefix:/$outbox:/</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/scheduleautorecurrequest/4.ics</filepath>
+ </data>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ <request>
+ <method>DELAY</method>
+ <ruri>4</ruri>
+ </request>
+ </test>
+ <test name='2' ignore='no'>
+ <description>No items in resource01 Inbox</description>
+ <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
+ <method>PROPFIND</method>
+ <ruri>$rpathprefix1:/$inbox:/</ruri>
+ <verify>
+ <callback>multistatusItems</callback>
+ <arg>
+ <name>count</name>
+ <value>0</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='3' ignore='no'>
+ <description>One item in resource01 Calendar</description>
+ <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
+ <method>GETNEW</method>
+ <ruri>$rpathprefix1:/calendar/</ruri>
+ <verify>
+ <callback>dataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/scheduleautorecurrequest/5.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='4' ignore='no'>
+ <description>One item in user01 Inbox</description>
+ <request user="$useradmin:" pswd="$pswdadmin:" print-response="no">
+ <method>GETNEW</method>
+ <ruri>$pathprefix:/$inbox:/</ruri>
+ <verify>
+ <callback>dataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/scheduleautorecurrequest/6.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
+ <end>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$pathprefix:/$outbox:/</ruri>
+ </request>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$pathprefix:/$inbox:/</ruri>
+ </request>
+ <request user="$useradmin:" pswd="$pswdadmin:">
+ <method>DELETEALL</method>
+ <ruri>$rpathprefix1:/$outbox:/</ruri>
+ </request>
+ <request user="$useradmin:" pswd="$pswdadmin:">
+ <method>DELETEALL</method>
+ <ruri>$rpathprefix1:/$inbox:/</ruri>
+ </request>
+ <request user="$useradmin:" pswd="$pswdadmin:">
+ <method>DELETEALL</method>
+ <ruri>$rpathprefix1:/calendar/</ruri>
+ </request>
+ </end>
+
+</caldavtest>
Modified: CalendarServer/branches/users/cdaboo/better-itip-1835/twistedcaldav/itip.py
===================================================================
--- CalendarServer/branches/users/cdaboo/better-itip-1835/twistedcaldav/itip.py 2007-09-04 17:19:41 UTC (rev 1840)
+++ CalendarServer/branches/users/cdaboo/better-itip-1835/twistedcaldav/itip.py 2007-09-04 20:54:29 UTC (rev 1841)
@@ -334,7 +334,7 @@
check_reply = False
if calmatch:
# See whether the new component is older than any existing ones and throw it away if so
- newinfo = getSyncInfo(calendar)
+ newinfo = getSyncInfo(child.fp.basename(), calendar)
cal = updatecal.iCalendar(calmatch)
info = getSyncInfo(calmatch, cal)
if compareSyncInfo(info, newinfo) < 0:
@@ -1110,7 +1110,14 @@
# FIXME: going to ignore VTIMEZONE - i.e. will assume that the component being added
# use a TZID that is already specified in the old component set.
-
+
+ # We will update the SEQUENCE on the master to the highest value of the current one on the master
+ # or the ones in the components we are changing.
+ existing_master = oldcal.masterComponent()
+ max_sequence = existing_master.propertyValue("SEQUENCE")
+ if max_sequence is None:
+ max_sequence = 0
+
for component in newcal.subcomponents():
if component.name() == "VTIMEZONE":
continue
@@ -1120,7 +1127,14 @@
if old_component:
oldcal.removeComponent(old_component)
oldcal.addComponent(component)
+ max_sequence = max(max_sequence, component.propertyValue("SEQUENCE"))
+ seq = existing_master.getProperty("SEQUENCE")
+ if seq:
+ seq.setValue(max_sequence)
+ else:
+ existing_master.addProperty(Property("SEQUENCE", max_sequence))
+
def getAllInfo(collection, calendar, ignore):
"""
Find each component in the calendar collection that has a matching UID with
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20070904/26778cc6/attachment.html
More information about the calendarserver-changes
mailing list