Revision: 2091 http://trac.macosforge.org/projects/calendarserver/changeset/2091 Author: cdaboo@apple.com Date: 2008-01-04 14:39:32 -0800 (Fri, 04 Jan 2008) Log Message: ----------- Tests for handling of X-CALENDARSERVER-ACCESS on PUT. Modified Paths: -------------- CalDAVTester/branches/users/cdaboo/private_events-2082/scripts/tests/privateevents.xml Added Paths: ----------- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/10.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/11.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/12.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/13.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/4.xml CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/5.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/6.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/7.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/8.ics CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/9.ics Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/10.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/10.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/10.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,31 @@ +BEGIN:VCALENDAR +CALSCALE:GREGORIAN +PRODID:-//Cyrusoft International\, Inc.//Mulberry v4.0//EN +VERSION:2.0 +X-CALENDARSERVER-ACCESS:CONFIDENTIAL +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFC@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/11.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/11.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/11.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,30 @@ +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFC@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/12.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/12.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/12.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,31 @@ +BEGIN:VCALENDAR +CALSCALE:GREGORIAN +PRODID:-//Cyrusoft International\, Inc.//Mulberry v4.0//EN +VERSION:2.0 +X-CALENDARSERVER-ACCESS:RESTRICTED +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFD@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/13.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/13.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/13.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,30 @@ +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFD@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/4.xml =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/4.xml (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/4.xml 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8" ?> +<D:acl xmlns:D="DAV:"> + <D:ace> + <D:principal> + <D:href>$principaluri2:</D:href> + </D:principal> + <D:grant> + <D:privilege><D:read/></D:privilege> + <D:privilege><D:write/></D:privilege> + </D:grant> + </D:ace> + <D:ace> + <D:principal> + <D:href>$principaluri3:</D:href> + </D:principal> + <D:grant> + <D:privilege><D:read/></D:privilege> + </D:grant> + </D:ace> +</D:acl> Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/5.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/5.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/5.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,30 @@ +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFF@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/6.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/6.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/6.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,31 @@ +BEGIN:VCALENDAR +CALSCALE:GREGORIAN +PRODID:-//Cyrusoft International\, Inc.//Mulberry v4.0//EN +VERSION:2.0 +X-CALENDARSERVER-ACCESS:PUBLIC +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFA@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/7.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/7.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/7.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,30 @@ +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFA@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/8.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/8.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/8.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,31 @@ +BEGIN:VCALENDAR +CALSCALE:GREGORIAN +PRODID:-//Cyrusoft International\, Inc.//Mulberry v4.0//EN +VERSION:2.0 +X-CALENDARSERVER-ACCESS:PRIVATE +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFB@ninevah.local +END:VEVENT +END:VCALENDAR Added: CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/9.ics =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/9.ics (rev 0) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/Resource/privateevents/9.ics 2008-01-04 22:39:32 UTC (rev 2091) @@ -0,0 +1,30 @@ +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 +DTSTART;TZID=US/Eastern:20060101T100000 +DURATION:PT1H +SUMMARY:event 1 +UID:54E181BC7CCC373042B28842FFB@ninevah.local +END:VEVENT +END:VCALENDAR Modified: CalDAVTester/branches/users/cdaboo/private_events-2082/scripts/tests/privateevents.xml =================================================================== --- CalDAVTester/branches/users/cdaboo/private_events-2082/scripts/tests/privateevents.xml 2008-01-04 22:38:23 UTC (rev 2090) +++ CalDAVTester/branches/users/cdaboo/private_events-2082/scripts/tests/privateevents.xml 2008-01-04 22:39:32 UTC (rev 2091) @@ -32,6 +32,18 @@ <filepath>Resource/delete/1.txt</filepath> </data> </request> + <request end-delete="yes"> + <method>MKCALENDAR</method> + <ruri>$pathprefix:/sharedcalendar/</ruri> + </request> + <request> + <method>ACL</method> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/4.xml</filepath> + </data> + </request> </start> <test-suite name='OPTIONS header' ignore='no'> @@ -241,6 +253,1228 @@ </test> </test-suite> + <test-suite name='PUT behavior without access' ignore='no'> + <test name='1'> + <description>PUT without access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/1.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/5.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/1.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/1.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/1.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/1.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/5.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='6'> + <description>PUT by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/1.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/5.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='7'> + <description>PROPFIND by user01</description> + <request print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + </arg> + </verify> + </request> + </test> + <test name='8'> + <description>PROPFIND by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + </arg> + </verify> + </request> + </test> + <test name='9'> + <description>PROPFIND by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT behavior with PUBLIC access' ignore='no'> + <test name='1'> + <description>PUT with access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/6.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/6.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='6'> + <description>PUT by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/6.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='7'> + <description>PROPFIND by user01</description> + <request print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + </arg> + </verify> + </request> + </test> + <test name='8'> + <description>PROPFIND by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + </arg> + </verify> + </request> + </test> + <test name='9'> + <description>PROPFIND by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT re-write behavior with PUBLIC access' ignore='no'> + <test name='1'> + <description>Overwrite PUT with no access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/7.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/7.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='6'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + <test name='7'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/2.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PUBLIC</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT behavior with PRIVATE access' ignore='no'> + <test name='1'> + <description>PUT with access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/8.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PRIVATE</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/8.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='6'> + <description>PUT by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/8.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='7'> + <description>PROPFIND by user01</description> + <request print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>3.ics</value> + </arg> + </verify> + </request> + </test> + <test name='8'> + <description>PROPFIND by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + </arg> + </verify> + </request> + </test> + <test name='9'> + <description>PROPFIND by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT re-write behavior with PRIVATE access' ignore='no'> + <test name='1'> + <description>Overwrite PUT with no access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/9.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:PRIVATE</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/3.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/9.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT behavior with CONFIDENTIAL access' ignore='no'> + <test name='1'> + <description>PUT with access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/10.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:CONFIDENTIAL</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:CONFIDENTIAL</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:CONFIDENTIAL</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/10.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='6'> + <description>PUT by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/10.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='7'> + <description>PROPFIND by user01</description> + <request print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>3.ics</value> + <value>4.ics</value> + </arg> + </verify> + </request> + </test> + <test name='8'> + <description>PROPFIND by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>4.ics</value> + </arg> + </verify> + </request> + </test> + <test name='9'> + <description>PROPFIND by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>4.ics</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT re-write behavior with CONFIDENTIAL access' ignore='no'> + <test name='1'> + <description>Overwrite PUT with no access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/11.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:CONFIDENTIAL</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:CONFIDENTIAL</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:CONFIDENTIAL</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/4.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/11.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT behavior with RESTRICTED access' ignore='no'> + <test name='1'> + <description>PUT with access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/12.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:RESTRICTED</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:RESTRICTED</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:RESTRICTED</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/12.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='6'> + <description>PUT by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/12.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + <test name='7'> + <description>PROPFIND by user01</description> + <request print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>3.ics</value> + <value>4.ics</value> + <value>5.ics</value> + </arg> + </verify> + </request> + </test> + <test name='8'> + <description>PROPFIND by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>4.ics</value> + <value>5.ics</value> + </arg> + </verify> + </request> + </test> + <test name='9'> + <description>PROPFIND by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>PROPFIND</method> + <header> + <name>Depth</name> + <value>1</value> + </header> + <ruri>$pathprefix:/sharedcalendar/</ruri> + <data> + <content-type>text/xml; charset=utf-8</content-type> + <filepath>Resource/privateevents/1.xml</filepath> + </data> + <verify> + <callback>multistatusItems</callback> + <arg> + <name>okhrefs</name> + <value></value> + <value>1.ics</value> + <value>2.ics</value> + <value>4.ics</value> + <value>5.ics</value> + </arg> + </verify> + </request> + </test> + </test-suite> + + <test-suite name='PUT re-write behavior with RESTRICTED access' ignore='no'> + <test name='1'> + <description>Overwrite PUT with no access by user01</description> + <request print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/13.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + </verify> + </request> + </test> + <test name='2'> + <description>GET by user01</description> + <request print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:RESTRICTED</value> + </arg> + </verify> + </request> + </test> + <test name='3'> + <description>GET by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:RESTRICTED</value> + </arg> + </verify> + </request> + </test> + <test name='4'> + <description>GET by user03</description> + <request user="$userid3:" pswd="$pswd3:" print-response="no"> + <method>GET</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <verify> + <callback>statusCode</callback> + </verify> + <verify> + <callback>dataString</callback> + <arg> + <name>contains</name> + <value>X-CALENDARSERVER-ACCESS:RESTRICTED</value> + </arg> + </verify> + </request> + </test> + <test name='5'> + <description>PUT by user02</description> + <request user="$userid2:" pswd="$pswd2:" print-response="no"> + <method>PUT</method> + <ruri>$pathprefix:/sharedcalendar/5.ics</ruri> + <data> + <content-type>text/calendar; charset=utf-8</content-type> + <filepath>Resource/privateevents/13.ics</filepath> + </data> + <verify> + <callback>statusCode</callback> + <arg> + <name>status</name> + <value>403</value> + </arg> + </verify> + </request> + </test> + </test-suite> + <end/> </caldavtest>
participants (1)
-
source_changes@macosforge.org