Example #1
0
 function testCreateCalendarObject()
 {
     $backend = new Sabre_CalDAV_Backend_PDO($this->pdo);
     $returnedId = $backend->createCalendar('principals/user2', 'somerandomid', array());
     $backend->createCalendarObject($returnedId, 'random-id', 'calendar-data');
     $data = $backend->getCalendarObject($returnedId, 'random-id');
     $this->assertEquals('calendar-data', $data['calendardata']);
     $this->assertEquals($returnedId, $data['calendarid']);
     $this->assertEquals('random-id', $data['uri']);
 }
Example #2
0
 static function getSQLiteDB()
 {
     if (file_exists(SABRE_TEMPDIR . '/testdb.sqlite')) {
         unlink(SABRE_TEMPDIR . '/testdb.sqlite');
     }
     $pdo = new PDO('sqlite:' . SABRE_TEMPDIR . '/testdb.sqlite');
     $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
     // Yup this is definitely not 'fool proof', but good enough for now.
     $queries = explode(';', file_get_contents(__DIR__ . '/../../../examples/sql/sqlite.calendars.sql'));
     foreach ($queries as $query) {
         $pdo->exec($query);
     }
     // Inserting events through a backend class.
     $backend = new Sabre_CalDAV_Backend_PDO($pdo);
     $calendarId = $backend->createCalendar('principals/user1', 'UUID-123467', array('{DAV:}displayname' => 'user1 calendar', '{urn:ietf:params:xml:ns:caldav}calendar-description' => 'Calendar description', '{http://apple.com/ns/ical/}calendar-order' => '1', '{http://apple.com/ns/ical/}calendar-color' => '#FF0000'));
     $backend->createCalendar('principals/user1', 'UUID-123468', array('{DAV:}displayname' => 'user1 calendar2', '{urn:ietf:params:xml:ns:caldav}calendar-description' => 'Calendar description', '{http://apple.com/ns/ical/}calendar-order' => '1', '{http://apple.com/ns/ical/}calendar-color' => '#FF0000'));
     $backend->createCalendarObject($calendarId, 'UUID-2345', self::getTestCalendarData());
     return $pdo;
 }
Example #3
0
 function testCalendarQueryTimeRangeNoEnd()
 {
     $backend = new Sabre_CalDAV_Backend_PDO($this->pdo);
     $backend->createCalendarObject(1, "todo", "BEGIN:VCALENDAR\r\nBEGIN:VTODO\r\nEND:VTODO\r\nEND:VCALENDAR\r\n");
     $backend->createCalendarObject(1, "event", "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nDTSTART:20120101\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n");
     $backend->createCalendarObject(1, "event2", "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nDTSTART:20120103\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n");
     $filters = 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('20120102'), 'end' => null))), 'prop-filters' => array(), 'is-not-defined' => false, 'time-range' => null);
     $this->assertEquals(array("event2"), $backend->calendarQuery(1, $filters));
 }