[CalendarServer-changes] [13971] CalDAVTester/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Wed Sep 17 11:28:40 PDT 2014
Revision: 13971
http://trac.calendarserver.org//changeset/13971
Author: cdaboo at apple.com
Date: 2014-09-17 11:28:40 -0700 (Wed, 17 Sep 2014)
Log Message:
-----------
Add crud POST update tests for return-changed behavior.
Modified Paths:
--------------
CalDAVTester/trunk/scripts/tests/CalDAV/bulk.xml
CalDAVTester/trunk/scripts/tests/CardDAV/bulk.xml
Added Paths:
-----------
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/6.xml
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/7.ics
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/1.xml
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/2.ics
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/3.xml
CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/4.ics
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/6.xml
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/7.vcf
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/1.xml
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/2.vcf
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/3.xml
CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/4.vcf
Added: CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/6.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/6.xml (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/6.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<MM:multiput xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav" xmlns:MM="http://me.com/_namespace/">
+<MM:resource>
+<D:href>$href:</D:href>
+<D:set>
+<C:calendar-data><![CDATA[BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//PYVOBJECT//NONSGML Version 1//EN
+BEGIN:VTIMEZONE
+TZID:Etc/GMT+5
+X-LIC-LOCATION:Etc/GMT+5
+BEGIN:STANDARD
+DTSTART:18000101T000000
+RDATE:18000101T000000
+TZNAME:GMT+5
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART;TZID=Etc/GMT+5:$now.0:T180000
+DURATION:PT1H
+DTSTAMP:20051222T210310Z
+SUMMARY:event 1 modified
+BEGIN:VALARM
+ACTION:AUDIO
+TRIGGER;RELATED=START:-PT10M
+END:VALARM
+END:VEVENT
+END:VCALENDAR
+]]>
+</C:calendar-data>
+</D:set>
+</MM:resource>
+</MM:multiput>
Added: CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/7.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/7.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one/7.ics 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,26 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//PYVOBJECT//NONSGML Version 1//EN
+BEGIN:VTIMEZONE
+TZID:Etc/GMT+5
+X-LIC-LOCATION:Etc/GMT+5
+BEGIN:STANDARD
+DTSTART:18000101T000000
+RDATE:18000101T000000
+TZNAME:GMT+5
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART;TZID=Etc/GMT+5:$now.0:T180000
+DURATION:PT1H
+DTSTAMP:20051222T210310Z
+SUMMARY:event 1 modified
+BEGIN:VALARM
+ACTION:AUDIO
+TRIGGER;RELATED=START:-PT10M
+END:VALARM
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/1.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/1.xml (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/1.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<MM:multiput xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav" xmlns:MM="http://me.com/_namespace/">
+<MM:resource>
+<D:set>
+<C:calendar-data><![CDATA[BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//PYVOBJECT//NONSGML Version 1//EN
+BEGIN:VTIMEZONE
+TZID:Etc/GMT+5
+X-LIC-LOCATION:Etc/GMT+5
+BEGIN:STANDARD
+DTSTART:18000101T000000
+RDATE:18000101T000000
+TZNAME:GMT+5
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART;TZID=Etc/GMT+5:$now.0:T180000
+DURATION:PT1H
+DTSTAMP:20051222T210310Z
+SUMMARY:event 1
+ORGANIZER;CN=$username1::$cuaddr1:
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED:$cuaddr1:
+BEGIN:VALARM
+ACTION:AUDIO
+TRIGGER;RELATED=START:-PT10M
+END:VALARM
+END:VEVENT
+END:VCALENDAR
+]]>
+</C:calendar-data>
+</D:set>
+</MM:resource>
+</MM:multiput>
Added: CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/2.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/2.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/2.ics 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,28 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//PYVOBJECT//NONSGML Version 1//EN
+BEGIN:VTIMEZONE
+TZID:Etc/GMT+5
+X-LIC-LOCATION:Etc/GMT+5
+BEGIN:STANDARD
+DTSTART:18000101T000000
+RDATE:18000101T000000
+TZNAME:GMT+5
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART;TZID=Etc/GMT+5:$now.0:T180000
+DURATION:PT1H
+DTSTAMP:20051222T210310Z
+SUMMARY:event 1
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+BEGIN:VALARM
+ACTION:AUDIO
+TRIGGER;RELATED=START:-PT10M
+END:VALARM
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/3.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/3.xml (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/3.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<MM:multiput xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav" xmlns:MM="http://me.com/_namespace/">
+<MM:resource>
+<D:href>$href:</D:href>
+<D:set>
+<C:calendar-data><![CDATA[BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//PYVOBJECT//NONSGML Version 1//EN
+BEGIN:VTIMEZONE
+TZID:Etc/GMT+5
+X-LIC-LOCATION:Etc/GMT+5
+BEGIN:STANDARD
+DTSTART:18000101T000000
+RDATE:18000101T000000
+TZNAME:GMT+5
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART;TZID=Etc/GMT+5:$now.0:T180000
+DURATION:PT1H
+DTSTAMP:20051222T210310Z
+SUMMARY:event 1 modified
+ORGANIZER;CN=$username1::$cuaddr1:
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED:$cuaddr1:
+BEGIN:VALARM
+ACTION:AUDIO
+TRIGGER;RELATED=START:-PT10M
+END:VALARM
+END:VEVENT
+END:VCALENDAR
+]]>
+</C:calendar-data>
+</D:set>
+</MM:resource>
+</MM:multiput>
Added: CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/4.ics
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/4.ics (rev 0)
+++ CalDAVTester/trunk/Resource/CalDAV/bulk/crud-one-return/4.ics 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,29 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//PYVOBJECT//NONSGML Version 1//EN
+BEGIN:VTIMEZONE
+TZID:Etc/GMT+5
+X-LIC-LOCATION:Etc/GMT+5
+BEGIN:STANDARD
+DTSTART:18000101T000000
+RDATE:18000101T000000
+TZNAME:GMT+5
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+UID:$uid1:
+DTSTART;TZID=Etc/GMT+5:$now.0:T180000
+DURATION:PT1H
+DTSTAMP:20051222T210310Z
+SUMMARY:event 1 modified
+ORGANIZER;CN=$username1:;EMAIL=$email1::$cuaddrurn1:
+ATTENDEE;CN=$username1:;PARTSTAT=ACCEPTED;EMAIL=$email1::$cuaddrurn1:
+SEQUENCE:1
+BEGIN:VALARM
+ACTION:AUDIO
+TRIGGER;RELATED=START:-PT10M
+END:VALARM
+END:VEVENT
+END:VCALENDAR
Added: CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/6.xml
===================================================================
--- CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/6.xml (rev 0)
+++ CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/6.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<MM:multiput xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav" xmlns:MM="http://me.com/_namespace/">
+<MM:resource>
+<D:href>$href:</D:href>
+<D:set>
+<D:prop>
+<C:address-data><![CDATA[BEGIN:VCARD
+VERSION:3.0
+N:01-01;User;;;
+FN:User 01-01
+EMAIL;type=INTERNET;type=WORK;type=pref:user01 at example.com
+TEL;type=WORK;type=pref:1-555-555-5555
+TEL;type=CELL:1-444-444-4444
+ADR;type=WORK;type=pref:;;1245 Test;Sesame Street;California;12345;USA
+UID:user01-uid01
+END:VCARD
+]]>
+</C:address-data>
+</D:prop>
+</D:set>
+</MM:resource>
+</MM:multiput>
Added: CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/7.vcf
===================================================================
--- CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/7.vcf (rev 0)
+++ CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one/7.vcf 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,10 @@
+BEGIN:VCARD
+VERSION:3.0
+N:01-01;User;;;
+FN:User 01-01
+EMAIL;type=INTERNET;type=WORK;type=pref:user01 at example.com
+TEL;type=WORK;type=pref:1-555-555-5555
+TEL;type=CELL:1-444-444-4444
+ADR;type=WORK;type=pref:;;1245 Test;Sesame Street;California;12345;USA
+UID:user01-uid01
+END:VCARD
Added: CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/1.xml
===================================================================
--- CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/1.xml (rev 0)
+++ CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/1.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<MM:multiput xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav" xmlns:MM="http://me.com/_namespace/">
+<MM:resource>
+<D:set>
+<C:address-data><![CDATA[BEGIN:VCARD
+VERSION:3.0
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+UID:78b64b6b-80b9-4b8a-bd81-8f36645d8bbf
+FN:user02
+N:user02;;;;
+X-ADDRESSBOOKSERVER-KIND:group
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid02
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid02
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:FCBA0FA3-00B2-4C95-B4EC-4CCC4843F8B1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:3765A955-1B96-41EA-994D-335192BEDCCD
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:44745975-AE6D-4FB0-80A6-A298427E047A
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid01
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:934731C6-1C95-4C40-BE1F-FA4215B2307B
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:ED7A5AEC-AB19-4CE0-AD6A-2923A3E5C4E1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:3765A955-1B96-41EA-994D-335192BEDCCD
+END:VCARD
+]]>
+</C:address-data>
+</D:set>
+</MM:resource>
+</MM:multiput>
Added: CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/2.vcf
===================================================================
--- CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/2.vcf (rev 0)
+++ CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/2.vcf 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,15 @@
+BEGIN:VCARD
+VERSION:3.0
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+UID:78b64b6b-80b9-4b8a-bd81-8f36645d8bbf
+FN:user02
+N:user02;;;;
+X-ADDRESSBOOKSERVER-KIND:group
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:3765A955-1B96-41EA-994D-335192BEDCCD
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:44745975-AE6D-4FB0-80A6-A298427E047A
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:934731C6-1C95-4C40-BE1F-FA4215B2307B
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:ED7A5AEC-AB19-4CE0-AD6A-2923A3E5C4E1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:FCBA0FA3-00B2-4C95-B4EC-4CCC4843F8B1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid01
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid02
+END:VCARD
Added: CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/3.xml
===================================================================
--- CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/3.xml (rev 0)
+++ CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/3.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<MM:multiput xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav" xmlns:MM="http://me.com/_namespace/">
+<MM:resource>
+<D:href>$href:</D:href>
+<D:set>
+<D:prop>
+<C:address-data><![CDATA[BEGIN:VCARD
+VERSION:3.0
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+UID:78b64b6b-80b9-4b8a-bd81-8f36645d8bbf
+FN:user02-02
+N:user02-02;;;;
+X-ADDRESSBOOKSERVER-KIND:group
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid02
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid02
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:FCBA0FA3-00B2-4C95-B4EC-4CCC4843F8B1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:3765A955-1B96-41EA-994D-335192BEDCCD
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:44745975-AE6D-4FB0-80A6-A298427E047A
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid01
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:934731C6-1C95-4C40-BE1F-FA4215B2307B
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:ED7A5AEC-AB19-4CE0-AD6A-2923A3E5C4E1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:3765A955-1B96-41EA-994D-335192BEDCCD
+END:VCARD
+]]>
+</C:address-data>
+</D:prop>
+</D:set>
+</MM:resource>
+</MM:multiput>
Added: CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/4.vcf
===================================================================
--- CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/4.vcf (rev 0)
+++ CalDAVTester/trunk/Resource/CardDAV/bulk/crud-one-return/4.vcf 2014-09-17 18:28:40 UTC (rev 13971)
@@ -0,0 +1,15 @@
+BEGIN:VCARD
+VERSION:3.0
+PRODID:-//CALENDARSERVER.ORG//NONSGML Version 1//EN
+UID:78b64b6b-80b9-4b8a-bd81-8f36645d8bbf
+FN:user02-02
+N:user02-02;;;;
+X-ADDRESSBOOKSERVER-KIND:group
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:3765A955-1B96-41EA-994D-335192BEDCCD
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:44745975-AE6D-4FB0-80A6-A298427E047A
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:934731C6-1C95-4C40-BE1F-FA4215B2307B
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:ED7A5AEC-AB19-4CE0-AD6A-2923A3E5C4E1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:FCBA0FA3-00B2-4C95-B4EC-4CCC4843F8B1
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid01
+X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:user01-uid02
+END:VCARD
Modified: CalDAVTester/trunk/scripts/tests/CalDAV/bulk.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CalDAV/bulk.xml 2014-09-17 17:07:30 UTC (rev 13970)
+++ CalDAVTester/trunk/scripts/tests/CalDAV/bulk.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -726,6 +726,54 @@
</verify>
</request>
</test>
+ <test name='7'>
+ <description>POST single new event</description>
+ <request>
+ <method>POST</method>
+ <ruri>$calendarpath1:/</ruri>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/CalDAV/bulk/crud-one/6.xml</filepath>
+ </data>
+ <verify>
+ <callback>xmlElementMatch</callback>
+ <arg>
+ <name>exists</name>
+ <value>$verify-property-prefix:/{DAV:}getetag[!$etag:]</value>
+ <value>$multistatus-href-prefix:[=$href:]</value>
+ </arg>
+ <arg>
+ <name>notexists</name>
+ <value>$verify-property-prefix:/{urn:ietf:params:xml:ns:caldav}calendar-data</value>
+ </arg>
+ </verify>
+ <grabelement>
+ <name>$verify-property-prefix:/{DAV:}getetag</name>
+ <variable>$etag:</variable>
+ </grabelement>
+ </request>
+ </test>
+ <test name='8'>
+ <description>Check valid data</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href:</ruri>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/bulk/crud-one/7.ics</value>
+ </arg>
+ </verify>
+ <verify>
+ <callback>header</callback>
+ <arg>
+ <name>ETag</name>
+ <value>$etag:</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
<test name='-1'>
<description>Clean up</description>
<request>
@@ -738,6 +786,120 @@
</test>
</test-suite>
+ <test-suite name='CRUD POST - one event return changed'>
+ <test name='1'>
+ <description>POST single new event</description>
+ <request>
+ <method>POST</method>
+ <ruri>$calendarpath1:/</ruri>
+ <header>
+ <name>X-MobileMe-DAV-Options</name>
+ <value>return-changed-data</value>
+ </header>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/CalDAV/bulk/crud-one-return/1.xml</filepath>
+ </data>
+ <verify>
+ <callback>xmlElementMatch</callback>
+ <arg>
+ <name>exists</name>
+ <value>$verify-property-prefix:/{DAV:}getetag</value>
+ <value>$verify-property-prefix:/{urn:ietf:params:xml:ns:caldav}calendar-data</value>
+ </arg>
+ </verify>
+ <grabelement>
+ <name>$multistatus-href-prefix:</name>
+ <variable>$href:</variable>
+ </grabelement>
+ <grabelement>
+ <name>$verify-property-prefix:/{DAV:}getetag</name>
+ <variable>$etag:</variable>
+ </grabelement>
+ </request>
+ </test>
+ <test name='2'>
+ <description>Check valid data</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href:</ruri>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/bulk/crud-one-return/2.ics</value>
+ </arg>
+ </verify>
+ <verify>
+ <callback>header</callback>
+ <arg>
+ <name>ETag</name>
+ <value>$etag:</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='3'>
+ <description>POST single new event</description>
+ <request>
+ <method>POST</method>
+ <ruri>$calendarpath1:/</ruri>
+ <header>
+ <name>X-MobileMe-DAV-Options</name>
+ <value>return-changed-data</value>
+ </header>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/CalDAV/bulk/crud-one-return/3.xml</filepath>
+ </data>
+ <verify>
+ <callback>xmlElementMatch</callback>
+ <arg>
+ <name>exists</name>
+ <value>$verify-property-prefix:/{DAV:}getetag[!$etag:]</value>
+ <value>$multistatus-href-prefix:[=$href:]</value>
+ <value>$verify-property-prefix:/{urn:ietf:params:xml:ns:caldav}calendar-data</value>
+ </arg>
+ </verify>
+ <grabelement>
+ <name>$verify-property-prefix:/{DAV:}getetag</name>
+ <variable>$etag:</variable>
+ </grabelement>
+ </request>
+ </test>
+ <test name='4'>
+ <description>Check valid data</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href:</ruri>
+ <verify>
+ <callback>calendarDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CalDAV/bulk/crud-one-return/4.ics</value>
+ </arg>
+ </verify>
+ <verify>
+ <callback>header</callback>
+ <arg>
+ <name>ETag</name>
+ <value>$etag:</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='-1'>
+ <description>Clean up</description>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$calendarpath1:/</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
<test-suite name='CRUD POST - multiple'>
<test name='1'>
<description>POST single new event</description>
Modified: CalDAVTester/trunk/scripts/tests/CardDAV/bulk.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/CardDAV/bulk.xml 2014-09-17 17:07:30 UTC (rev 13970)
+++ CalDAVTester/trunk/scripts/tests/CardDAV/bulk.xml 2014-09-17 18:28:40 UTC (rev 13971)
@@ -858,6 +858,54 @@
</verify>
</request>
</test>
+ <test name='7'>
+ <description>POST single existing vcard - update</description>
+ <request>
+ <method>POST</method>
+ <ruri>$addressbookpath1:/</ruri>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/CardDAV/bulk/crud-one/6.xml</filepath>
+ </data>
+ <verify>
+ <callback>xmlElementMatch</callback>
+ <arg>
+ <name>exists</name>
+ <value>$verify-property-prefix:/{DAV:}getetag[!$etag:]</value>
+ <value>$multistatus-href-prefix:[=$href:]</value>
+ </arg>
+ <arg>
+ <name>notexists</name>
+ <value>$verify-property-prefix:/{urn:ietf:params:xml:ns:carddav}address-data</value>
+ </arg>
+ </verify>
+ <grabelement>
+ <name>$verify-property-prefix:/{DAV:}getetag</name>
+ <variable>$etag:</variable>
+ </grabelement>
+ </request>
+ </test>
+ <test name='8'>
+ <description>Data changed</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href:</ruri>
+ <verify>
+ <callback>addressDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CardDAV/bulk/crud-one/7.vcf</value>
+ </arg>
+ </verify>
+ <verify>
+ <callback>header</callback>
+ <arg>
+ <name>ETag</name>
+ <value>$etag:</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
<test name='-1'>
<description>Clean up</description>
<request>
@@ -870,6 +918,120 @@
</test>
</test-suite>
+ <test-suite name='CRUD POST - one vcard return changed'>
+ <test name='1'>
+ <description>POST single new vcard</description>
+ <request>
+ <method>POST</method>
+ <ruri>$addressbookpath1:/</ruri>
+ <header>
+ <name>X-MobileMe-DAV-Options</name>
+ <value>return-changed-data</value>
+ </header>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/CardDAV/bulk/crud-one-return/1.xml</filepath>
+ </data>
+ <verify>
+ <callback>xmlElementMatch</callback>
+ <arg>
+ <name>exists</name>
+ <value>$verify-property-prefix:/{DAV:}getetag</value>
+ <value>$verify-property-prefix:/{urn:ietf:params:xml:ns:carddav}address-data</value>
+ </arg>
+ </verify>
+ <grabelement>
+ <name>$multistatus-href-prefix:</name>
+ <variable>$href:</variable>
+ </grabelement>
+ <grabelement>
+ <name>$verify-property-prefix:/{DAV:}getetag</name>
+ <variable>$etag:</variable>
+ </grabelement>
+ </request>
+ </test>
+ <test name='2'>
+ <description>Check valid data</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href:</ruri>
+ <verify>
+ <callback>addressDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CardDAV/bulk/crud-one-return/2.vcf</value>
+ </arg>
+ </verify>
+ <verify>
+ <callback>header</callback>
+ <arg>
+ <name>ETag</name>
+ <value>$etag:</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='3'>
+ <description>POST single existing vcard - update</description>
+ <request>
+ <method>POST</method>
+ <ruri>$addressbookpath1:/</ruri>
+ <header>
+ <name>X-MobileMe-DAV-Options</name>
+ <value>return-changed-data</value>
+ </header>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/CardDAV/bulk/crud-one-return/3.xml</filepath>
+ </data>
+ <verify>
+ <callback>xmlElementMatch</callback>
+ <arg>
+ <name>exists</name>
+ <value>$verify-property-prefix:/{DAV:}getetag[!$etag:]</value>
+ <value>$multistatus-href-prefix:[=$href:]</value>
+ <value>$verify-property-prefix:/{urn:ietf:params:xml:ns:carddav}address-data</value>
+ </arg>
+ </verify>
+ <grabelement>
+ <name>$verify-property-prefix:/{DAV:}getetag</name>
+ <variable>$etag:</variable>
+ </grabelement>
+ </request>
+ </test>
+ <test name='4'>
+ <description>Data changed</description>
+ <request>
+ <method>GET</method>
+ <ruri>$href:</ruri>
+ <verify>
+ <callback>addressDataMatch</callback>
+ <arg>
+ <name>filepath</name>
+ <value>Resource/CardDAV/bulk/crud-one-return/4.vcf</value>
+ </arg>
+ </verify>
+ <verify>
+ <callback>header</callback>
+ <arg>
+ <name>ETag</name>
+ <value>$etag:</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='-1'>
+ <description>Clean up</description>
+ <request>
+ <method>DELETEALL</method>
+ <ruri>$addressbookpath1:/</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
<test-suite name='CRUD POST - multiple'>
<test name='1'>
<description>POST single new vcard</description>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20140917/ddedd4d7/attachment-0001.html>
More information about the calendarserver-changes
mailing list