diff options
author | Andrew Manning <tamanning@zoho.com> | 2016-05-11 05:54:20 -0400 |
---|---|---|
committer | Andrew Manning <tamanning@zoho.com> | 2016-05-11 05:54:20 -0400 |
commit | d968fc51eab8b0fb259ecbeae517056b99554017 (patch) | |
tree | 10e551cff9fefbefbfd7e5031b57320116bb7fce /vendor/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php | |
parent | c7698e4dc388b7d9a9db368672cb057c1d4d3a01 (diff) | |
parent | 4dd3839c41e18d9724855e7955d8737b6f52dcd6 (diff) | |
download | volse-hubzilla-d968fc51eab8b0fb259ecbeae517056b99554017.tar.gz volse-hubzilla-d968fc51eab8b0fb259ecbeae517056b99554017.tar.bz2 volse-hubzilla-d968fc51eab8b0fb259ecbeae517056b99554017.zip |
Merge remote-tracking branch 'upstream/dev' into plugin-repo
Diffstat (limited to 'vendor/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php')
-rw-r--r-- | vendor/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php | 540 |
1 files changed, 0 insertions, 540 deletions
diff --git a/vendor/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php b/vendor/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php deleted file mode 100644 index fdfe4de89..000000000 --- a/vendor/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php +++ /dev/null @@ -1,540 +0,0 @@ -<?php - -namespace Sabre\CalDAV; -use Sabre\DAV; - -class CalendarQueryParserTest extends \PHPUnit_Framework_TestCase { - - function parse($xml) { - - $xml = -'<?xml version="1.0"?> -<c:calendar-query xmlns:c="urn:ietf:params:xml:ns:caldav" xmlns:d="DAV:"> -' . implode("\n", $xml) . ' -</c:calendar-query>'; - - $dom = DAV\XMLUtil::loadDOMDocument($xml); - - $q = new CalendarQueryParser($dom); - $q->parse(); - return $q->filters; - - } - - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testNoFilter() { - - $xml = array(); - $this->parse($xml); - - } - - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testTwoCompFilter() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VEVENT" />', - ' <c:comp-filter name="VEVENT" />', - '</c:filter>' - ); - $this->parse($xml); - - } - - function testBasicFilter() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR" />', - '</c:filter>' - ); - $result = $this->parse($xml); - - $expected = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => false - ); - - $this->assertEquals( - $expected, - $result - ); - - } - - function testCompIsNotDefined() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR">', - ' <c:comp-filter name="VEVENT">', - ' <c:is-not-defined/>', - ' </c:comp-filter>', - ' </c:comp-filter>', - '</c:filter>' - ); - $result = $this->parse($xml); - - $expected = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array( - array( - 'name' => 'VEVENT', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'is-not-defined' => true, - 'time-range' => false - ), - ), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => false - ); - - $this->assertEquals( - $expected, - $result - ); - - } - - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testCompTimeRangeOnVCALENDAR() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR">', - ' <c:time-range start="20110101T000000Z" end="20111231T235959Z" />', - ' </c:comp-filter>', - '</c:filter>' - ); - $result = $this->parse($xml); - - } - - function testCompTimeRange() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR">', - ' <c:comp-filter name="VEVENT">', - ' <c:time-range start="20110101T000000Z" end="20111231T235959Z" />', - ' </c:comp-filter>', - ' <c:comp-filter name="VTODO">', - ' <c:time-range start="20110101T000000Z" />', - ' </c:comp-filter>', - ' <c:comp-filter name="VJOURNAL">', - ' <c:time-range end="20111231T235959Z" />', - ' </c:comp-filter>', - ' </c:comp-filter>', - '</c:filter>' - ); - $result = $this->parse($xml); - - $expected = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array( - array( - 'name' => 'VEVENT', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => array( - 'start' => new \DateTime('2011-01-01 00:00:00', new \DateTimeZone('GMT')), - 'end' => new \DateTime('2011-12-31 23:59:59', new \DateTimeZone('GMT')), - ), - ), - array( - 'name' => 'VTODO', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => array( - 'start' => new \DateTime('2011-01-01 00:00:00', new \DateTimeZone('GMT')), - 'end' => null, - ), - ), - array( - 'name' => 'VJOURNAL', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => array( - 'start' => null, - 'end' => new \DateTime('2011-12-31 23:59:59', new \DateTimeZone('GMT')), - ), - ), - ), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => false - ); - - $this->assertEquals( - $expected, - $result - ); - - } - - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testCompTimeRangeBadRange() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR">', - ' <c:comp-filter name="VEVENT">', - ' <c:time-range start="20110101T000000Z" end="20100101T000000Z" />', - ' </c:comp-filter>', - ' </c:comp-filter>', - '</c:filter>' - ); - $this->parse($xml); - - } - - function testProp() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR">', - ' <c:comp-filter name="VEVENT">', - ' <c:prop-filter name="SUMMARY">', - ' <c:text-match>vacation</c:text-match>', - ' </c:prop-filter>', - ' </c:comp-filter>', - ' </c:comp-filter>', - '</c:filter>' - ); - $result = $this->parse($xml); - - $expected = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array( - array( - 'name' => 'VEVENT', - 'is-not-defined' => false, - 'comp-filters' => array(), - 'prop-filters' => array( - array( - 'name' => 'SUMMARY', - 'is-not-defined' => false, - 'param-filters' => array(), - 'text-match' => array( - 'negate-condition' => false, - 'collation' => 'i;ascii-casemap', - 'value' => 'vacation', - ), - 'time-range' => null, - ), - ), - 'time-range' => null, - ), - ), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => false - ); - - $this->assertEquals( - $expected, - $result - ); - - } - - function testComplex() { - - $xml = array( - '<c:filter>', - ' <c:comp-filter name="VCALENDAR">', - ' <c:comp-filter name="VEVENT">', - ' <c:prop-filter name="SUMMARY">', - ' <c:text-match collation="i;unicode-casemap">vacation</c:text-match>', - ' </c:prop-filter>', - ' <c:prop-filter name="DTSTAMP">', - ' <c:time-range start="20110704T000000Z" />', - ' </c:prop-filter>', - ' <c:prop-filter name="ORGANIZER">', - ' <c:is-not-defined />', - ' </c:prop-filter>', - ' <c:prop-filter name="DTSTART">', - ' <c:param-filter name="VALUE">', - ' <c:text-match negate-condition="yes">DATE</c:text-match>', - ' </c:param-filter>', - ' </c:prop-filter>', - ' </c:comp-filter>', - ' </c:comp-filter>', - '</c:filter>' - ); - $result = $this->parse($xml); - - $expected = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array( - array( - 'name' => 'VEVENT', - 'is-not-defined' => false, - 'comp-filters' => array(), - 'prop-filters' => array( - array( - 'name' => 'SUMMARY', - 'is-not-defined' => false, - 'param-filters' => array(), - 'text-match' => array( - 'negate-condition' => false, - 'collation' => 'i;unicode-casemap', - 'value' => 'vacation', - ), - 'time-range' => null, - ), - array( - 'name' => 'DTSTAMP', - 'is-not-defined' => false, - 'param-filters' => array(), - 'text-match' => null, - 'time-range' => array( - 'start' => new \DateTime('2011-07-04 00:00:00', new \DateTimeZone('GMT')), - 'end' => null, - ), - ), - array( - 'name' => 'ORGANIZER', - 'is-not-defined' => true, - 'param-filters' => array(), - 'text-match' => null, - 'time-range' => null, - ), - array( - 'name' => 'DTSTART', - 'is-not-defined' => false, - 'param-filters' => array( - array( - 'name' => 'VALUE', - 'is-not-defined' => false, - 'text-match' => array( - 'negate-condition' => true, - 'value' => 'DATE', - 'collation' => 'i;ascii-casemap', - ), - ), - ), - 'text-match' => null, - 'time-range' => null, - ), - ), - 'time-range' => null, - ), - ), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => false - ); - - $this->assertEquals( - $expected, - $result - ); - - } - - function testOther1() { - - // This body was exactly sent to us from the sabredav mailing list. Checking if this parses correctly. - - $body = <<<BLA -<?xml version="1.0" encoding="utf-8" ?> -<C:calendar-query xmlns:D="DAV:" -xmlns:C="urn:ietf:params:xml:ns:caldav"> - <D:prop> - <C:calendar-data/> - <D:getetag/> - </D:prop> - <C:filter> - <C:comp-filter name="VCALENDAR"> - <C:comp-filter name="VEVENT"> - <C:time-range start="20090101T000000Z" end="20121202T000000Z"/> - </C:comp-filter> - </C:comp-filter> - </C:filter> -</C:calendar-query> -BLA; - - $dom = DAV\XMLUtil::loadDOMDocument($body); - - $q = new CalendarQueryParser($dom); - $q->parse(); - - $this->assertEquals(array( - '{urn:ietf:params:xml:ns:caldav}calendar-data', - '{DAV:}getetag', - ), $q->requestedProperties); - - $expectedFilters = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array( - array( - 'name' => 'VEVENT', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'time-range' => array( - 'start' => new \DateTime('2009-01-01 00:00:00', new \DateTimeZone('UTC')), - 'end' => new \DateTime('2012-12-02 00:00:00', new \DateTimeZone('UTC')), - ), - 'is-not-defined' => false, - ), - ), - 'prop-filters' => array(), - 'time-range' => null, - 'is-not-defined' => false, - ); - - $this->assertEquals($expectedFilters, $q->filters); - - } - - function testExpand() { - - $xml = array( - '<d:prop>', - ' <c:calendar-data>', - ' <c:expand start="20110101T000000Z" end="20120101T000000Z"/>', - ' </c:calendar-data>', - '</d:prop>', - '<c:filter>', - ' <c:comp-filter name="VCALENDAR" />', - '</c:filter>' - ); - - $xml = -'<?xml version="1.0"?> -<c:calendar-query xmlns:c="urn:ietf:params:xml:ns:caldav" xmlns:d="DAV:"> -' . implode("\n", $xml) . ' -</c:calendar-query>'; - - $dom = DAV\XMLUtil::loadDOMDocument($xml); - $q = new CalendarQueryParser($dom); - $q->parse(); - - - $expected = array( - 'name' => 'VCALENDAR', - 'comp-filters' => array(), - 'prop-filters' => array(), - 'is-not-defined' => false, - 'time-range' => false - ); - - $this->assertEquals( - $expected, - $q->filters - ); - - $this->assertEquals(array( - '{urn:ietf:params:xml:ns:caldav}calendar-data', - ), $q->requestedProperties); - - $this->assertEquals( - array( - 'start' => new \DateTime('2011-01-01 00:00:00', new \DateTimeZone('UTC')), - 'end' => new \DateTime('2012-01-01 00:00:00', new \DateTimeZone('UTC')), - ), - $q->expand - ); - - } - - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testExpandNoStart() { - - $xml = array( - '<d:prop>', - ' <c:calendar-data>', - ' <c:expand end="20120101T000000Z"/>', - ' </c:calendar-data>', - '</d:prop>', - '<c:filter>', - ' <c:comp-filter name="VCALENDAR" />', - '</c:filter>' - ); - - $xml = -'<?xml version="1.0"?> -<c:calendar-query xmlns:c="urn:ietf:params:xml:ns:caldav" xmlns:d="DAV:"> -' . implode("\n", $xml) . ' -</c:calendar-query>'; - - $dom = DAV\XMLUtil::loadDOMDocument($xml); - $q = new CalendarQueryParser($dom); - $q->parse(); - - } - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testExpandNoEnd() { - - $xml = array( - '<d:prop>', - ' <c:calendar-data>', - ' <c:expand start="20120101T000000Z"/>', - ' </c:calendar-data>', - '</d:prop>', - '<c:filter>', - ' <c:comp-filter name="VCALENDAR" />', - '</c:filter>' - ); - - $xml = -'<?xml version="1.0"?> -<c:calendar-query xmlns:c="urn:ietf:params:xml:ns:caldav" xmlns:d="DAV:"> -' . implode("\n", $xml) . ' -</c:calendar-query>'; - - $dom = DAV\XMLUtil::loadDOMDocument($xml); - $q = new CalendarQueryParser($dom); - $q->parse(); - - } - /** - * @expectedException Sabre\DAV\Exception\BadRequest - */ - function testExpandBadTimes() { - - $xml = array( - '<d:prop>', - ' <c:calendar-data>', - ' <c:expand start="20120101T000000Z" end="19980101T000000Z"/>', - ' </c:calendar-data>', - '</d:prop>', - '<c:filter>', - ' <c:comp-filter name="VCALENDAR" />', - '</c:filter>' - ); - - $xml = -'<?xml version="1.0"?> -<c:calendar-query xmlns:c="urn:ietf:params:xml:ns:caldav" xmlns:d="DAV:"> -' . implode("\n", $xml) . ' -</c:calendar-query>'; - - $dom = DAV\XMLUtil::loadDOMDocument($xml); - $q = new CalendarQueryParser($dom); - $q->parse(); - - } -} |