Merge branch 'master' of github.com:DAViCal/davical into github
[davical.git] / testing / tests / regression-suite / 0243-Moz-POST-FB.test
blob6690bc8d78bfd759ed31b1f9565dc473d5747b7c
2 # POST to scheduling outbox for freebusy query on user2
4 TYPE=POST
5 URL=http://regression.host/caldav.php/user1/.out/
6 HEADER=User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.18pre) Gecko/20080917 Sunbird/0.9
7 HEADER=Accept: text/xml
8 HEADER=Accept-Language: en-us,en;q=0.5
9 HEADER=Accept-Charset: utf-8,*;q=0.1
10 HEADER=Content-Type: text/calendar; charset=utf-8
12 REPLACE=/^DTSTAMP:\d{4}[01]\d[0123]\dT[012]\d[0-5]\d[0-6]\dZ\r?$/DTSTAMP:yyyymmddThhmmssZ/
14 BEGINDATA
15 BEGIN:VCALENDAR
16 PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN
17 VERSION:2.0
18 METHOD:REQUEST
19 BEGIN:VFREEBUSY
20 DTSTAMP:20081022T062945Z
21 ORGANIZER:mailto:user1@example.net
22 DTSTART:20081020T110000Z
23 DTEND:20081105T110000Z
24 UID:c5bd82ea-cd89-4f58-8d31-336f47e44f97
25 ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;CUTYPE=INDIVIDUAL:
26  mailto:user1@example.net
27 END:VFREEBUSY
28 END:VCALENDAR
29 ENDDATA
31 QUERY
32 SELECT calendar_item.rrule, calendar_item.status,
33        dtstart AT TIME ZONE olson_name AS "a)    Start",
34        olson_name AS "b) Location",
35        to_char(calendar_item.dtstart at time zone 'GMT','YYYYMMDD"T"HH24MISS"Z"') AS "c)UTC Start",
36        to_char(calendar_item.dtend at time zone 'GMT','YYYYMMDD"T"HH24MISS"Z"') AS "d)  UTC End"
37  FROM usr INNER JOIN collection USING (user_no)
38           INNER JOIN caldav_data USING (collection_id)
39           INNER JOIN calendar_item USING(dav_id)
40           LEFT JOIN timezones ON (tz_id=tzid)
41 WHERE lower(usr.email) = 'user1@example.net'
42   AND collection.is_calendar AND collection.schedule_transp = 'opaque'
43   AND rrule_event_overlaps( dtstart, dtend, rrule, '20081020T110000Z', '20081105T110000Z' )
44   AND caldav_data.caldav_type IN ( 'VEVENT', 'VFREEBUSY' )
45   AND (calendar_item.transp != 'TRANSPARENT' OR calendar_item.transp IS NULL)
46   AND (calendar_item.status != 'CANCELLED' OR calendar_item.status IS NULL)
47  ORDER BY 3
48 ENDQUERY