New regression tests/results for BIND/PROPFIND/REPORT.

This commit is contained in:
Andrew McMillan 2010-03-15 00:29:46 +13:00
parent f4e67960f2
commit d943c3f263
12 changed files with 580 additions and 0 deletions

View File

@ -0,0 +1,16 @@
HTTP/1.1 201 Created
Date: Dow, 01 Jan 2000 00:00:00 GMT
DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy
Location: /caldav.php/user4/user2/
Content-Length: 0
Content-Type: text/plain; charset="utf-8"
bind_id: >1430<
bound_source_id: >11<
dav_displayname: >Bind to User 2's Calendar, as uploaded by Admin<
dav_name: >/user4/user2/<
dav_owner_id: >6<
length: >8<
parent_container: >/user4/<

View File

@ -0,0 +1,39 @@
#
# BIND a collection into an additional location
# also applying a ticket during the bind
#
TYPE=BIND
URL=http://regression.host/caldav.php/user4/
AUTH=user4:user4
# Get the ticket we created earlier in 948...
GETSQL=ticket
SELECT ticket_id FROM access_ticket
WHERE target_collection_id = 11 AND target_resource_id is null;
ENDSQL
HEADER=User-Agent: Ticket Spec Tests
HEADER=Content-Type: text/xml; charset="UTF-8"
HEADER=Ticket: ##ticket##
HEAD
BEGINDATA
<?xml version="1.0" encoding="utf-8"?>
<bind xmlns="DAV:">
<segment>user2</segment>
<href>/caldav.php/user2/home</href>
</bind>
ENDDATA
QUERY
SELECT bind_id,
bound_source_id,
length(access_ticket_id),
dav_owner_id,
parent_container,
dav_name,
dav_displayname
FROM dav_binding
ENDQUERY

View File

@ -0,0 +1,18 @@
HTTP/1.1 403 Forbidden
Date: Dow, 01 Jan 2000 00:00:00 GMT
DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy
Content-Length: 138
Content-Type: text/xml; charset="utf-8"
<?xml version="1.0" encoding="utf-8" ?>
<error xmlns="DAV:">
<DAV::can-overwrite/>A resource already exists at the destination.
</error>
bind_id: >1430<
bound_source_id: >11<
dav_displayname: >Bind to User 2's Calendar, as uploaded by Admin<
dav_name: >/user4/user2/<
dav_owner_id: >6<
length: >8<
parent_container: >/user4/<

View File

@ -0,0 +1,39 @@
#
# BIND a collection into an additional location
# also applying a ticket during the bind
#
TYPE=BIND
URL=http://regression.host/caldav.php/user4/
AUTH=user4:user4
# Get the ticket we created earlier in 948...
GETSQL=ticket
SELECT ticket_id FROM access_ticket
WHERE target_collection_id = 11 AND target_resource_id is null;
ENDSQL
HEADER=User-Agent: Ticket Spec Tests
HEADER=Content-Type: text/xml; charset="UTF-8"
HEADER=Ticket: ##ticket##
HEAD
BEGINDATA
<?xml version="1.0" encoding="utf-8"?>
<bind xmlns="DAV:">
<segment>user2</segment>
<href>/caldav.php/user2/home</href>
</bind>
ENDDATA
QUERY
SELECT bind_id,
bound_source_id,
length(access_ticket_id),
dav_owner_id,
parent_container,
dav_name,
dav_displayname
FROM dav_binding
ENDQUERY

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8" ?>
<multistatus xmlns="DAV:">
<response>
<href>/caldav.php/user4/</href>
<propstat>
<prop>
<displayname>User 4</displayname>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/</href>
<propstat>
<prop>
<displayname>Bind to User 2's Calendar, as uploaded by Admin</displayname>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/home/</href>
<propstat>
<prop>
<displayname>mir-test</displayname>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/calendar-proxy-read/</href>
<propstat>
<prop>
<displayname>/user4/calendar-proxy-read/</displayname>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/calendar-proxy-write/</href>
<propstat>
<prop>
<displayname>/user4/calendar-proxy-write/</displayname>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multistatus>

View File

@ -0,0 +1,22 @@
#
# PROPFIND on a collection which we have bound into user4's home
#
TYPE=PROPFIND
URL=http://regression.host/caldav.php/user4/
AUTH=user4:user4
HEADER=User-Agent: BIND Spec Tests
HEADER=Content-Type: text/xml; charset="UTF-8"
HEADER=Depth: 1
BEGINDATA
<?xml version="1.0" encoding="utf-8"?>
<propfind xmlns="DAV:">
<prop>
<displayname/>
</prop>
</propfind>
ENDDATA
# <current-user-privilege-set/>

View File

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="utf-8" ?>
<multistatus xmlns="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
<response>
<href>/caldav.php/user4/user2/</href>
<propstat>
<prop>
<displayname>Bind to User 2's Calendar, as uploaded by Admin</displayname>
<owner>
<href>/user4/</href>
</owner>
<current-user-privilege-set>
<privilege>
<read/>
</privilege>
<privilege>
<read-current-user-privilege-set/>
</privilege>
<privilege>
<C:read-free-busy/>
</privilege>
<privilege>
<write/>
</privilege>
<privilege>
<write-properties/>
</privilege>
<privilege>
<write-content/>
</privilege>
<privilege>
<bind/>
</privilege>
<privilege>
<unbind/>
</privilege>
<privilege>
<C:schedule-deliver/>
</privilege>
<privilege>
<C:schedule-deliver-invite/>
</privilege>
<privilege>
<C:schedule-deliver-reply/>
</privilege>
<privilege>
<C:schedule-query-freebusy/>
</privilege>
<privilege>
<C:schedule-send/>
</privilege>
<privilege>
<C:schedule-send-invite/>
</privilege>
<privilege>
<C:schedule-send-reply/>
</privilege>
<privilege>
<C:schedule-send-freebusy/>
</privilege>
</current-user-privilege-set>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
<propstat>
<prop>
<getetag/>
</prop>
<status>HTTP/1.1 404 Not Found</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/33169d69-2969-4a96-a3e1-2e312b7614e6.ics</href>
<propstat>
<prop>
<getetag>"64d28f4f57515d6c63cec02b5d882eaa"</getetag>
<displayname>Daily Action Meeting</displayname>
<owner>
<href>/caldav.php/user2/</href>
</owner>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
<propstat>
<prop>
<current-user-privilege-set/>
</prop>
<status>HTTP/1.1 403 Forbidden</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/047871e3-6b70-4178-9af8-0ceb50f7b092.ics</href>
<propstat>
<prop>
<getetag>"58cba7e3fafb6080e85619ea77d08c7a"</getetag>
<displayname>Weekly Project Meeting</displayname>
<owner>
<href>/caldav.php/user2/</href>
</owner>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
<propstat>
<prop>
<current-user-privilege-set/>
</prop>
<status>HTTP/1.1 403 Forbidden</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/9429a973-2b13-4b1a-be09-948d75425c45.ics</href>
<propstat>
<prop>
<getetag>"13249ced6c7527191a003f54f7e3cd25"</getetag>
<displayname>Weekly catch-up</displayname>
<owner>
<href>/caldav.php/user2/</href>
</owner>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
<propstat>
<prop>
<current-user-privilege-set/>
</prop>
<status>HTTP/1.1 403 Forbidden</status>
</propstat>
</response>
</multistatus>

View File

@ -0,0 +1,24 @@
#
# PROPFIND on a collection which we have bound into user4's home
#
TYPE=PROPFIND
URL=http://regression.host/caldav.php/user4/user2/
AUTH=user4:user4
HEADER=User-Agent: BIND Spec Tests
HEADER=Content-Type: text/xml; charset="UTF-8"
HEADER=Depth: 1
BEGINDATA
<?xml version="1.0" encoding="utf-8"?>
<propfind xmlns="DAV:">
<prop>
<getetag/>
<displayname/>
<owner/>
<current-user-privilege-set/>
</prop>
</propfind>
ENDDATA

View File

@ -0,0 +1,142 @@
HTTP/1.1 207 Multi-Status
Date: Dow, 01 Jan 2000 00:00:00 GMT
DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy
ETag: "46385e06c78acb23818555378cced9bd"
Content-Length: 3517
Content-Type: text/xml; charset="utf-8"
<?xml version="1.0" encoding="utf-8" ?>
<multistatus xmlns="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
<response>
<href>/caldav.php/user4/user2/33169d69-2969-4a96-a3e1-2e312b7614e6.ics</href>
<propstat>
<prop>
<getetag>"64d28f4f57515d6c63cec02b5d882eaa"</getetag>
<C:calendar-data>BEGIN:VCALENDAR
PRODID:-//davical.org//NONSGML AWL Calendar//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20081023T054958Z
LAST-MODIFIED:20081023T055044Z
DTSTAMP:20081023T054958Z
UID:33169d69-2969-4a96-a3e1-2e312b7614e6
SUMMARY:Daily Action Meeting
RRULE:FREQ=DAILY;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR
DTSTART;TZID=Pacific/Auckland:20081020T110000
DTEND;TZID=Pacific/Auckland:20081020T113000
X-MOZ-GENERATION:2
END:VEVENT
BEGIN:VTIMEZONE
TZID:Pacific/Auckland
X-LIC-LOCATION:Pacific/Auckland
BEGIN:DAYLIGHT
TZOFFSETFROM:+1200
TZOFFSETTO:+1300
TZNAME:NZDT
DTSTART:19700927T020000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=9
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+1300
TZOFFSETTO:+1200
TZNAME:NZST
DTSTART:19700405T030000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=1SU;BYMONTH=4
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
</C:calendar-data>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/047871e3-6b70-4178-9af8-0ceb50f7b092.ics</href>
<propstat>
<prop>
<getetag>"58cba7e3fafb6080e85619ea77d08c7a"</getetag>
<C:calendar-data>BEGIN:VCALENDAR
PRODID:-//davical.org//NONSGML AWL Calendar//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20081023T054934Z
LAST-MODIFIED:20081023T055059Z
DTSTAMP:20081023T054934Z
UID:047871e3-6b70-4178-9af8-0ceb50f7b092
SUMMARY:Weekly Project Meeting
RRULE:FREQ=WEEKLY;INTERVAL=1
DTSTART;TZID=Pacific/Auckland:20081020T090000
DTEND;TZID=Pacific/Auckland:20081020T100000
X-MOZ-GENERATION:2
END:VEVENT
BEGIN:VTIMEZONE
TZID:Pacific/Auckland
X-LIC-LOCATION:Pacific/Auckland
BEGIN:DAYLIGHT
TZOFFSETFROM:+1200
TZOFFSETTO:+1300
TZNAME:NZDT
DTSTART:19700927T020000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=9
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+1300
TZOFFSETTO:+1200
TZNAME:NZST
DTSTART:19700405T030000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=1SU;BYMONTH=4
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
</C:calendar-data>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/9429a973-2b13-4b1a-be09-948d75425c45.ics</href>
<propstat>
<prop>
<getetag>"13249ced6c7527191a003f54f7e3cd25"</getetag>
<C:calendar-data>BEGIN:VCALENDAR
PRODID:-//davical.org//NONSGML AWL Calendar//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20081023T055115Z
LAST-MODIFIED:20081023T055139Z
DTSTAMP:20081023T055115Z
UID:9429a973-2b13-4b1a-be09-948d75425c45
SUMMARY:Weekly catch-up
RRULE:FREQ=WEEKLY;INTERVAL=1
DTSTART;TZID=Pacific/Auckland:20081024T140000
DTEND;TZID=Pacific/Auckland:20081024T150000
X-MOZ-GENERATION:2
END:VEVENT
BEGIN:VTIMEZONE
TZID:Pacific/Auckland
X-LIC-LOCATION:Pacific/Auckland
BEGIN:DAYLIGHT
TZOFFSETFROM:+1200
TZOFFSETTO:+1300
TZNAME:NZDT
DTSTART:19700927T020000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=9
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+1300
TZOFFSETTO:+1200
TZNAME:NZST
DTSTART:19700405T030000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=1SU;BYMONTH=4
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
</C:calendar-data>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multistatus>

View File

@ -0,0 +1,26 @@
#
# Test multiget REPORT access to a bound calendar
#
TYPE=REPORT
URL=http://regression.host/caldav.php/user4/user2/
AUTH=user4:user4
HEADER=User-Agent: DAViCalTester/public
HEADER=Content-Type: text/xml; charset="UTF-8"
HEAD
BEGINDATA
<?xml version="1.0" encoding="UTF-8"?>
<calendar-multiget xmlns:D="DAV:" xmlns="urn:ietf:params:xml:ns:caldav">
<D:prop>
<D:getetag/>
<calendar-data/>
</D:prop>
<D:href>/caldav.php/user4/user2/33169d69-2969-4a96-a3e1-2e312b7614e6.ics</D:href>
<D:href>/caldav.php/user4/user2/047871e3-6b70-4178-9af8-0ceb50f7b092.ics</D:href>
<D:href>/caldav.php/user4/user2/9429a973-2b13-4b1a-be09-948d75425c45.ics</D:href>
</calendar-multiget>
ENDDATA

View File

@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8" ?>
<multistatus xmlns="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
<response>
<href>/caldav.php/user4/user2/</href>
<propstat>
<prop>
<getcontenttype>httpd/unix-directory</getcontenttype>
<resourcetype>
<collection/>
<C:calendar/>
</resourcetype>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
<propstat>
<prop>
<getetag/>
</prop>
<status>HTTP/1.1 404 Not Found</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/33169d69-2969-4a96-a3e1-2e312b7614e6.ics</href>
<propstat>
<prop>
<getcontenttype>text/calendar</getcontenttype>
<resourcetype/>
<getetag>"64d28f4f57515d6c63cec02b5d882eaa"</getetag>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/047871e3-6b70-4178-9af8-0ceb50f7b092.ics</href>
<propstat>
<prop>
<getcontenttype>text/calendar</getcontenttype>
<resourcetype/>
<getetag>"58cba7e3fafb6080e85619ea77d08c7a"</getetag>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>/caldav.php/user4/user2/9429a973-2b13-4b1a-be09-948d75425c45.ics</href>
<propstat>
<prop>
<getcontenttype>text/calendar</getcontenttype>
<resourcetype/>
<getetag>"13249ced6c7527191a003f54f7e3cd25"</getetag>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multistatus>

View File

@ -0,0 +1,23 @@
#
# PROPFIND on a collection which we have bound into user4's home
#
TYPE=PROPFIND
URL=http://regression.host/caldav.php/user4/user2/
AUTH=user4:user4
HEADER=User-Agent: BIND Spec Tests
HEADER=Content-Type: text/xml; charset="UTF-8"
HEADER=Depth: 1
BEGINDATA
<?xml version="1.0" encoding="UTF-8"?>
<propfind xmlns="DAV:">
<prop>
<getcontenttype/>
<resourcetype/>
<getetag/>
</prop>
</propfind>
ENDDATA