[CalendarServer-changes] [14842] CalDAVTester/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Thu May 28 12:58:44 PDT 2015
Revision: 14842
http://trac.calendarserver.org//changeset/14842
Author: cdaboo at apple.com
Date: 2015-05-28 12:58:44 -0700 (Thu, 28 May 2015)
Log Message:
-----------
Tests for splitting of an attendee trashed item.
Modified Paths:
--------------
CalDAVTester/trunk/scripts/tests/CalDAV/trash.xml
Added Paths:
-----------
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/1.ics
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/2.ics
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/3.ics
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/4.ics
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/5.ics
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/6.ics
CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/7.ics
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/1.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/1.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/1.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,17 @@
+BEGIN:VCALENDAR
+CALSCALE:GREGORIAN
+PRODID:-//Example Inc.//Example Calendar//EN
+VERSION:2.0
+BEGIN:VEVENT
+DTSTAMP:20051222T205953Z
+CREATED:20060101T150000Z
+DTSTART:$now.0:T000000Z
+DURATION:PT1H
+SUMMARY:event 1
+UID:$uid1:
+ORGANIZER;CN=$username1::$cuaddr1:
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED:$cuaddr1:
+ATTENDEE;CN=$username2:;RSVP=TRUE;PARTSTAT=NEEDS-ACTION:$cuaddr2:
+RRULE:FREQ=DAILY
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/2.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/2.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/2.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,17 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+CALSCALE:GREGORIAN
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART:$now.0:T000000Z
+DURATION:PT1H
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username2:;PARTSTAT=ACCEPTED;EMAIL=$email2::$cuaddrurn2:
+CREATED:20060101T150000Z
+DTSTAMP:20051222T205953Z
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+RRULE:FREQ=DAILY
+SUMMARY:event 1
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/3.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/3.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/3.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,17 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+CALSCALE:GREGORIAN
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART:$now.0:T000000Z
+DURATION:PT1H
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username2:;PARTSTAT=DECLINED;EMAIL=$email2:;SCHEDULE-STATUS=2.0:$cuaddrurn2:
+CREATED:20060101T150000Z
+DTSTAMP:20051222T205953Z
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+RRULE:FREQ=DAILY
+SUMMARY:event 1
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/4.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/4.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/4.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,19 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+CALSCALE:GREGORIAN
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART:$now.4:T000000Z
+DURATION:PT1H
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username2:;PARTSTAT=DECLINED;EMAIL=$email2:;SCHEDULE-STATUS=2.0:$cuaddrurn2:
+CREATED:20060101T150000Z
+DTSTAMP:20051222T205953Z
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+RELATED-TO;RELTYPE=X-CALENDARSERVER-RECURRENCE-SET:$relid:
+RRULE:FREQ=DAILY
+SEQUENCE:1
+SUMMARY:event 1
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/5.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/5.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/5.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,19 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+CALSCALE:GREGORIAN
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:$olduid:
+DTSTART:$now.0:T000000Z
+DURATION:PT1H
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username2:;PARTSTAT=DECLINED;EMAIL=$email2:;SCHEDULE-STATUS=2.0:$cuaddrurn2:
+CREATED:20060101T150000Z
+DTSTAMP:20051222T205953Z
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+RELATED-TO;RELTYPE=X-CALENDARSERVER-RECURRENCE-SET:$relid:
+RRULE:FREQ=DAILY;UNTIL=$now.3:T235959Z
+SEQUENCE:1
+SUMMARY:event 1
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/6.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/6.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/6.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,19 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+CALSCALE:GREGORIAN
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART:$now.4:T000000Z
+DURATION:PT1H
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username2:;PARTSTAT=ACCEPTED;EMAIL=$email2:;SCHEDULE-STATUS=2.0:$cuaddrurn2:
+CREATED:20060101T150000Z
+DTSTAMP:20051222T205953Z
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+RELATED-TO;RELTYPE=X-CALENDARSERVER-RECURRENCE-SET:$relid:
+RRULE:FREQ=DAILY
+SEQUENCE:1
+SUMMARY:event 1
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/7.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/7.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/trash/organizersplit/7.ics 2015-05-28 19:58:44 UTC (rev 14842)
@@ -0,0 +1,19 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+CALSCALE:GREGORIAN
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+BEGIN:VEVENT
+UID:$olduid:
+DTSTART:$now.0:T000000Z
+DURATION:PT1H
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username2:;PARTSTAT=ACCEPTED;EMAIL=$email2:;SCHEDULE-STATUS=2.0:$cuaddrurn2:
+CREATED:20060101T150000Z
+DTSTAMP:20051222T205953Z
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+RELATED-TO;RELTYPE=X-CALENDARSERVER-RECURRENCE-SET:$relid:
+RRULE:FREQ=DAILY;UNTIL=$now.3:T235959Z
+SEQUENCE:1
+SUMMARY:event 1
+END:VEVENT
+END:VCALENDAR
Modified: CalDAVTester/trunk/scripts/tests/CalDAV/trash.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CalDAV/trash.xml 2015-05-28 15:32:34 UTC (rev 14841)
+++ CalDAVTester/trunk/scripts/tests/CalDAV/trash.xml 2015-05-28 19:58:44 UTC (rev 14842)
@@ -1027,6 +1027,312 @@
</test-suite>
+ <test-suite name='Attendee trashes event, then Organizer splits it'>
+ <require-feature>
+ <feature>recurrence-splitting</feature>
+ </require-feature>
+ <test name='1'>
+ <description>Create a calendar</description>
+ <request>
+ <method>MKCALENDAR</method>
+ <ruri>$calendarhome1:/tobedeleted/</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='2'>
+ <description>PUT scheduled event</description>
+ <request>
+ <method>PUT</method>
+ <ruri>$calendarhome1:/tobedeleted/1.ics</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/CalDAV/trash/organizersplit/1.ics</filepath>
+ </data>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='3'>
+ <description>One item in user02 Inbox</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>WAITDELETEALL 1</method>
+ <ruri>$inboxpath2:/</ruri>
+ </request>
+ </test>
+ <test name='4'>
+ <description>Attendee replies</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>GETNEW</method>
+ <ruri>$calendarpath2:/</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PUT</method>
+ <ruri>$</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/CalDAV/trash/organizersplit/2.ics</filepath>
+ </data>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='5'>
+ <description>One item in user01 Inbox</description>
+ <request>
+ <method>WAITDELETEALL 1</method>
+ <ruri>$inboxpath1:/</ruri>
+ </request>
+ </test>
+ <test name='6'>
+ <description>Attendee trashes event</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>DELETE</method>
+ <ruri>$</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='7'>
+ <description>One item in user01 Inbox</description>
+ <request>
+ <method>WAITDELETEALL 1</method>
+ <ruri>$inboxpath1:/</ruri>
+ </request>
+ </test>
+ <test name='8'>
+ <description>Organizer sees declined</description>
+ <request>
+ <method>GET</method>
+ <ruri>$calendarhome1:/tobedeleted/1.ics</ruri>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/trash/organizersplit/3.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='9'>
+ <description>Attendee has no events</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PROPFIND</method>
+ <ruri>$calendarpath2:/</ruri>
+ <header>
+ <name>Depth</name>
+ <value>1</value>
+ </header>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/Common/PROPFIND/Count.xml</filepath>
+ </data>
+ <verify>
+ <callback>multistatusItems</callback>
+ <arg>
+ <name>count</name>
+ <value>0</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='10'>
+ <description>Organizer splits event</description>
+ <request>
+ <method>POST</method>
+ <ruri>$calendarhome1:/tobedeleted/1.ics?action=split&rid=$now.4:T000000Z</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>204</value>
+ </arg>
+ </verify>
+ <grabheader>
+ <name>Split-Component-URL</name>
+ <variable>$href2:</variable>
+ </grabheader>
+ </request>
+ <request>
+ <method>GET</method>
+ <ruri>$href2:</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ <grabcalproperty>
+ <name>VEVENT/UID</name>
+ <variable>$olduid:</variable>
+ </grabcalproperty>
+ <grabcalproperty>
+ <name>VEVENT/RELATED-TO</name>
+ <variable>$relid:</variable>
+ </grabcalproperty>
+ </request>
+ </test>
+ <test name='12'>
+ <description>GET new-part split (original) resource</description>
+ <request>
+ <method>GET</method>
+ <ruri>$calendarhome1:/tobedeleted/1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/trash/organizersplit/4.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='13'>
+ <description>GET old-part split (new resource)</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href2:</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/trash/organizersplit/5.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='14'>
+ <description>Attendee still has no events</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PROPFIND</method>
+ <ruri>$calendarpath2:/</ruri>
+ <header>
+ <name>Depth</name>
+ <value>1</value>
+ </header>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/Common/PROPFIND/Count.xml</filepath>
+ </data>
+ <verify>
+ <callback>multistatusItems</callback>
+ <arg>
+ <name>count</name>
+ <value>0</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='15'>
+ <description>Attendee recovers trash</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>POST</method>
+ <ruri>$calendarhome2:/?action=recovertrash&mode=event&id=all</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='16'>
+ <description>Attendee has two events</description>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PROPFIND</method>
+ <ruri>$calendarpath2:/</ruri>
+ <header>
+ <name>Depth</name>
+ <value>1</value>
+ </header>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/Common/PROPFIND/Count.xml</filepath>
+ </data>
+ <verify>
+ <callback>multistatusItems</callback>
+ <arg>
+ <name>count</name>
+ <value>2</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='17'>
+ <description>Two items in user01 Inbox</description>
+ <request>
+ <method>WAITDELETEALL 2</method>
+ <ruri>$inboxpath1:/</ruri>
+ </request>
+ </test>
+ <test name='18'>
+ <description>GET new-part split (original) resource - back to tentative</description>
+ <request>
+ <method>GET</method>
+ <ruri>$calendarhome1:/tobedeleted/1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/trash/organizersplit/6.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='19'>
+ <description>GET old-part split (new resource) - back to tentative</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href2:</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/trash/organizersplit/7.ics</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='clean up'>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$calendarhome1:/tobedeleted/</ruri>
+ </request>
+ <request>
+ <method>DELETE</method>
+ <ruri>$calendarhome1:/tobedeleted/</ruri>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>WAITDELETEALL 2</method>
+ <ruri>$inboxpath2:/</ruri>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>DELETEALL</method>
+ <ruri>$calendarpath2:/</ruri>
+ </request>
+ <request>
+ <method>POST</method>
+ <ruri>$calendarhome1:/?action=emptytrash</ruri>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>POST</method>
+ <ruri>$calendarhome2:/?action=emptytrash</ruri>
+ </request>
+ </test>
+ </test-suite>
+
<end>
<request user="$useradmin:" pswd="$pswdadmin:">
<method>DELETEALL</method>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20150528/75f78065/attachment-0001.html>
More information about the calendarserver-changes
mailing list