Example #1
0
 /**
  * @depends testUpdateInvites
  */
 function testDeleteSharedCalendar()
 {
     $backend = new PDO($this->pdo);
     // creating a new calendar
     $backend->createCalendar('principals/user1', 'somerandomid', []);
     $calendar = $backend->getCalendarsForUser('principals/user1')[0];
     $ownerSharee = new Sharee(['href' => 'principals/user1', 'principal' => 'principals/user1', 'access' => \Sabre\DAV\Sharing\Plugin::ACCESS_SHAREDOWNER, 'inviteStatus' => \Sabre\DAV\Sharing\Plugin::INVITE_ACCEPTED]);
     // Add a new invite
     $backend->updateInvites($calendar['id'], [new Sharee(['href' => 'mailto:user@example.org', 'principal' => 'principals/user2', 'access' => \Sabre\DAV\Sharing\Plugin::ACCESS_READ, 'inviteStatus' => \Sabre\DAV\Sharing\Plugin::INVITE_ACCEPTED, 'properties' => ['{DAV:}displayname' => 'User 2']])]);
     $expectedCalendar = ['id' => [1, 2], 'principaluri' => 'principals/user2', '{http://calendarserver.org/ns/}getctag' => 'http://sabre.io/ns/sync/1', '{http://sabredav.org/ns}sync-token' => '1', 'share-access' => \Sabre\DAV\Sharing\Plugin::ACCESS_READ, 'read-only' => true, 'share-resource-uri' => '/ns/share/1'];
     $calendars = $backend->getCalendarsForUser('principals/user2');
     foreach ($expectedCalendar as $k => $v) {
         $this->assertEquals($v, $calendars[0][$k], "Key " . $k . " in calendars array did not have the expected value.");
     }
     // Removing the shared calendar.
     $backend->deleteCalendar($calendars[0]['id']);
     $this->assertEquals([], $backend->getCalendarsForUser('principals/user2'));
     $result = $backend->getInvites($calendar['id']);
     $expected = [new Sharee(['href' => 'principals/user1', 'principal' => 'principals/user1', 'access' => \Sabre\DAV\Sharing\Plugin::ACCESS_SHAREDOWNER, 'inviteStatus' => \Sabre\DAV\Sharing\Plugin::INVITE_ACCEPTED])];
     $this->assertEquals($expected, $result);
 }
 function testGetChanges()
 {
     $backend = new PDO($this->pdo);
     $id = $backend->createCalendar('principals/user1', 'bla', []);
     $result = $backend->getChangesForCalendar($id, null, 1);
     $this->assertEquals(['syncToken' => 1, 'modified' => [], 'deleted' => [], 'added' => []], $result);
     $currentToken = $result['syncToken'];
     $dummyTodo = "BEGIN:VCALENDAR\r\nBEGIN:VTODO\r\nEND:VTODO\r\nEND:VCALENDAR\r\n";
     $backend->createCalendarObject($id, "todo1.ics", $dummyTodo);
     $backend->createCalendarObject($id, "todo2.ics", $dummyTodo);
     $backend->createCalendarObject($id, "todo3.ics", $dummyTodo);
     $backend->updateCalendarObject($id, "todo1.ics", $dummyTodo);
     $backend->deleteCalendarObject($id, "todo2.ics");
     $result = $backend->getChangesForCalendar($id, $currentToken, 1);
     $this->assertEquals(['syncToken' => 6, 'modified' => ["todo1.ics"], 'deleted' => ["todo2.ics"], 'added' => ["todo3.ics"]], $result);
     $result = $backend->getChangesForCalendar($id, null, 1);
     $this->assertEquals(['syncToken' => 6, 'modified' => [], 'deleted' => [], 'added' => ["todo1.ics", "todo3.ics"]], $result);
 }
Example #3
0
 /**
  * @depends testCreateCalendarObject
  */
 function testDeleteCalendarObject()
 {
     $backend = new PDO($this->pdo);
     $returnedId = $backend->createCalendar('principals/user2', 'somerandomid', array());
     $object = "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nDTSTART;VALUE=DATE:20120101\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n";
     $backend->createCalendarObject($returnedId, 'random-id', $object);
     $backend->deleteCalendarObject($returnedId, 'random-id');
     $data = $backend->getCalendarObject($returnedId, 'random-id');
     $this->assertNull($data);
 }