ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
Issue220Test.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Sabre\CalDAV;
4 
5 use Sabre\HTTP;
6 
15 
16  protected $setupCalDAV = true;
17 
18  protected $caldavCalendars = [
19  [
20  'id' => 1,
21  'name' => 'Calendar',
22  'principaluri' => 'principals/user1',
23  'uri' => 'calendar1',
24  ]
25  ];
26 
27  protected $caldavCalendarObjects = [
28  1 => [
29  'event.ics' => [
30  'calendardata' => 'BEGIN:VCALENDAR
31 VERSION:2.0
32 BEGIN:VEVENT
33 DTSTART;TZID=Europe/Berlin:20120601T180000
34 SUMMARY:Brot backen
35 RRULE:FREQ=DAILY;INTERVAL=1;WKST=MO
36 TRANSP:OPAQUE
37 DURATION:PT20M
38 LAST-MODIFIED:20120601T064634Z
39 CREATED:20120601T064634Z
40 DTSTAMP:20120601T064634Z
41 UID:b64f14c5-dccc-4eda-947f-bdb1f763fbcd
42 BEGIN:VALARM
43 TRIGGER;VALUE=DURATION:-PT5M
44 ACTION:DISPLAY
45 DESCRIPTION:Default Event Notification
46 X-WR-ALARMUID:cd952c1b-b3d6-41fb-b0a6-ec3a1a5bdd58
47 END:VALARM
48 END:VEVENT
49 BEGIN:VEVENT
50 DTSTART;TZID=Europe/Berlin:20120606T180000
51 SUMMARY:Brot backen
52 TRANSP:OPAQUE
53 STATUS:CANCELLED
54 DTEND;TZID=Europe/Berlin:20120606T182000
55 LAST-MODIFIED:20120605T094310Z
56 SEQUENCE:1
57 RECURRENCE-ID:20120606T160000Z
58 UID:b64f14c5-dccc-4eda-947f-bdb1f763fbcd
59 END:VEVENT
60 END:VCALENDAR
61 ',
62  ],
63  ],
64  ];
65 
66  function testIssue220() {
67 
69  'REQUEST_METHOD' => 'REPORT',
70  'HTTP_CONTENT_TYPE' => 'application/xml',
71  'REQUEST_URI' => '/calendars/user1/calendar1',
72  'HTTP_DEPTH' => '1',
73  ]);
74 
75  $request->setBody('<?xml version="1.0" encoding="utf-8" ?>
76 <C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
77  <D:prop>
78  <C:calendar-data/>
79  <D:getetag/>
80  </D:prop>
81  <C:filter>
82  <C:comp-filter name="VCALENDAR">
83  <C:comp-filter name="VEVENT">
84  <C:comp-filter name="VALARM">
85  <C:time-range start="20120607T161646Z" end="20120612T161646Z"/>
86  </C:comp-filter>
87  </C:comp-filter>
88  </C:comp-filter>
89  </C:filter>
90 </C:calendar-query>');
91 
92  $response = $this->request($request);
93 
94  $this->assertFalse(strpos($response->body, '<s:exception>PHPUnit_Framework_Error_Warning</s:exception>'), 'Error Warning occurred: ' . $response->body);
95  $this->assertFalse(strpos($response->body, 'Invalid argument supplied for foreach()'), 'Invalid argument supplied for foreach(): ' . $response->body);
96 
97  $this->assertEquals(207, $response->status);
98  }
99 }
foreach($paths as $path) $request
Definition: asyncclient.php:32
This class may be used as a basis for other webdav-related unittests.
This unittest is created to check for an endless loop in CalendarQueryValidator.
request($request, $expectedStatus=null)
Makes a request, and returns a response object.
static createFromServerArray(array $serverArray)
This static method will create a new Request object, based on a PHP $_SERVER array.
Definition: Sapi.php:107
$response