diff --git a/tests/Sabre/CalDAV/Backend/AbstractPDOTestCase.php b/tests/Sabre/CalDAV/Backend/AbstractPDOTestCase.php index 8b6de11539..3209366ad2 100644 --- a/tests/Sabre/CalDAV/Backend/AbstractPDOTestCase.php +++ b/tests/Sabre/CalDAV/Backend/AbstractPDOTestCase.php @@ -903,6 +903,72 @@ public function testCalendarQueryTimeRangeNotSpecified() self::assertTrue(in_array('event2', $result)); } + public function testCalendarQueryGH1000() + { + $backend = new PDO($this->pdo); + $backend->createCalendarObject([1, 1], 'event1', <<createCalendarObject([1, 1], 'event2', << 'VCALENDAR', + 'is-not-defined' => false, + 'comp-filters' => [ + [ + 'name' => 'VEVENT', + 'is-not-defined' => false, + 'comp-filters' => [ + [ + 'name' => 'VALARM', + 'is-not-defined' => true, + 'comp-filters' => [], + 'prop-filters' => [], + 'time-range' => null, + ], + ], + 'prop-filters' => [], + 'time-range' => false, + ], + ], + 'prop-filters' => [], + 'time-range' => null, + ]; + + $result = $backend->calendarQuery([1, 1], $filters); + self::assertFalse(in_array('event1', $result)); + self::assertTrue(in_array('event2', $result)); + } + public function testGetChanges() { $backend = new PDO($this->pdo); diff --git a/tests/Sabre/CalDAV/Issue1000Test.php b/tests/Sabre/CalDAV/Issue1000Test.php new file mode 100644 index 0000000000..de312d9a83 --- /dev/null +++ b/tests/Sabre/CalDAV/Issue1000Test.php @@ -0,0 +1,99 @@ + 1, + 'name' => 'Calendar', + 'principaluri' => 'principals/user1', + 'uri' => 'calendar1', + ], + ]; + + protected $caldavCalendarObjects = [ + 1 => [ + 'event1.ics' => [ + 'calendardata' => 'BEGIN:VCALENDAR +VERSION:2.0 +BEGIN:VEVENT +UID:1111 +DTSTAMP:20120418T152519Z +DTSTART;VALUE=DATE:20120330 +DTEND;VALUE=DATE:20120531 +SEQUENCE:1 +SUMMARY:Birthday1 +TRANSP:TRANSPARENT +BEGIN:VALARM +ACTION:EMAIL +ATTENDEE:MAILTO:xxx@domain.de +TRIGGER;VALUE=DATE-TIME:20120329T060000Z +END:VALARM +END:VEVENT +END:VCALENDAR +', + ], + 'event2.ics' => [ + 'calendardata' => 'BEGIN:VCALENDAR +VERSION:2.0 +BEGIN:VEVENT +UID:1234 +DTSTAMP:20120418T152519Z +DTSTART;VALUE=DATE:20120330 +DTEND;VALUE=DATE:20120531 +SEQUENCE:1 +SUMMARY:Birthday2 +TRANSP:TRANSPARENT +END:VEVENT +END:VCALENDAR +', + ], + ], + ]; + + public function testIssue211() + { + $request = HTTP\Sapi::createFromServerArray([ + 'REQUEST_METHOD' => 'REPORT', + 'HTTP_CONTENT_TYPE' => 'application/xml', + 'REQUEST_URI' => '/calendars/user1/calendar1', + 'HTTP_DEPTH' => '1', + ]); + + $request->setBody(' + + + + + + + + + + + + + +'); + + $response = $this->request($request); + + self::assertTrue(strpos($response->getBodyAsString(), 'event2.ics') > 0); + self::assertTrue(false === strpos($response->getBodyAsString(), 'event1.ics')); + } +}