| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- <?php
- namespace Sabre\DAV;
- class SyncTokenPropertyTest extends \Sabre\DAVServerTest {
- /**
- * The assumption in these tests is that a PROPFIND is going on, and to
- * fetch the sync-token, the event handler is just able to use the existing
- * result.
- *
- * @dataProvider data
- */
- function testAlreadyThere1($name, $value) {
- $propFind = new PropFind('foo', [
- '{http://calendarserver.org/ns/}getctag',
- $name,
- ]);
- $propFind->set($name, $value);
- $corePlugin = new CorePlugin();
- $corePlugin->propFindLate($propFind, new SimpleCollection('hi'));
- $this->assertEquals("hello", $propFind->get('{http://calendarserver.org/ns/}getctag'));
- }
- /**
- * In these test-cases, the plugin is forced to do a local propfind to
- * fetch the items.
- *
- * @dataProvider data
- */
- function testRefetch($name, $value) {
- $this->server->tree = new Tree(
- new SimpleCollection('root', [
- new Mock\PropertiesCollection(
- 'foo',
- [],
- [$name => $value]
- )
- ])
- );
- $propFind = new PropFind('foo', [
- '{http://calendarserver.org/ns/}getctag',
- $name,
- ]);
- $corePlugin = $this->server->getPlugin('core');
- $corePlugin->propFindLate($propFind, new SimpleCollection('hi'));
- $this->assertEquals("hello", $propFind->get('{http://calendarserver.org/ns/}getctag'));
- }
- function testNoData() {
- $this->server->tree = new Tree(
- new SimpleCollection('root', [
- new Mock\PropertiesCollection(
- 'foo',
- [],
- []
- )
- ])
- );
- $propFind = new PropFind('foo', [
- '{http://calendarserver.org/ns/}getctag',
- ]);
- $corePlugin = $this->server->getPlugin('core');
- $corePlugin->propFindLate($propFind, new SimpleCollection('hi'));
- $this->assertNull($propFind->get('{http://calendarserver.org/ns/}getctag'));
- }
- function data() {
- return [
- [
- '{http://sabredav.org/ns}sync-token',
- "hello"
- ],
- [
- '{DAV:}sync-token',
- "hello"
- ],
- [
- '{DAV:}sync-token',
- new Xml\Property\Href(Sync\Plugin::SYNCTOKEN_PREFIX . "hello", false)
- ]
- ];
- }
- }
|