Merge branch 'master' of github.com:DAViCal/davical into github
[davical.git] / testing / tests / regression-suite / 0830-Spec-FREEBUSY-1.test
blob5982884a4fe3b3030c87bfaf81d0690d32a378a6
2 # Request a REPORT which should report only freebusy
4 TYPE=REPORT
5 URL=http://regression.host/caldav.php/user1/home/
6 HEADER=User-Agent: CALDAV compliance testing
7 HEADER=Accept: text/calendar
8 HEADER=Content-Type: text/xml
9 HEADER=Depth: 1
10 HEAD
12 BEGINDATA
13 <?xml version="1.0" encoding="utf-8" ?>
14 <C:free-busy-query xmlns:C="urn:ietf:params:xml:ns:caldav">
15   <C:time-range start="20061004T140000Z"
16                   end="20070105T220000Z"/>
17 </C:free-busy-query>
18 ENDDATA
20 REPLACE=/^DTSTAMP:\d{8}T\d{6}Z\r?$/DTSTAMP:yyyymmddThhmmssZ/
22 QUERY
23 SELECT calendar_item.rrule, calendar_item.status,
24        dtstart AT TIME ZONE olson_name AS "a)    Start",
25        olson_name AS "b) Location",
26        to_char(calendar_item.dtstart at time zone 'GMT','YYYYMMDD"T"HH24MISS"Z"') AS "c)UTC Start",
27        to_char(calendar_item.dtend at time zone 'GMT','YYYYMMDD"T"HH24MISS"Z"') AS "d)  UTC End"
28  FROM usr INNER JOIN collection USING (user_no)
29           INNER JOIN caldav_data USING (collection_id)
30           INNER JOIN calendar_item USING(dav_id)
31           LEFT JOIN timezones ON (tz_id=tzid)
32 WHERE caldav_data.dav_name ~ '^/user1/home/'
33   AND collection.is_calendar AND collection.schedule_transp = 'opaque'
34   AND rrule_event_overlaps( dtstart, dtend, rrule, '20061004T140000Z', '20070105T220000Z' )
35   AND caldav_data.caldav_type IN ( 'VEVENT', 'VFREEBUSY' )
36   AND (calendar_item.transp != 'TRANSPARENT' OR calendar_item.transp IS NULL)
37   AND (calendar_item.status != 'CANCELLED' OR calendar_item.status IS NULL)
38  ORDER BY 3
39 ENDQUERY