ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
InboxTest.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Sabre\CalDAV\Schedule;
4 
5 use Sabre\CalDAV;
6 use Sabre\DAV;
7 
9 
10  function testSetup() {
11 
12  $inbox = new Inbox(
13  new CalDAV\Backend\MockScheduling(),
14  'principals/user1'
15  );
16  $this->assertEquals('inbox', $inbox->getName());
17  $this->assertEquals([], $inbox->getChildren());
18  $this->assertEquals('principals/user1', $inbox->getOwner());
19  $this->assertEquals(null, $inbox->getGroup());
20 
21  $this->assertEquals([
22  [
23  'privilege' => '{DAV:}read',
24  'principal' => '{DAV:}authenticated',
25  'protected' => true,
26  ],
27  [
28  'privilege' => '{DAV:}write-properties',
29  'principal' => 'principals/user1',
30  'protected' => true,
31  ],
32  [
33  'privilege' => '{DAV:}unbind',
34  'principal' => 'principals/user1',
35  'protected' => true,
36  ],
37  [
38  'privilege' => '{DAV:}unbind',
39  'principal' => 'principals/user1/calendar-proxy-write',
40  'protected' => true,
41  ],
42  [
43  'privilege' => '{urn:ietf:params:xml:ns:caldav}schedule-deliver',
44  'principal' => '{DAV:}authenticated',
45  'protected' => true,
46  ],
47  ], $inbox->getACL());
48 
49  $ok = false;
50 
51  }
52 
56  function testGetChildren() {
57 
58  $backend = new CalDAV\Backend\MockScheduling();
59  $inbox = new Inbox(
60  $backend,
61  'principals/user1'
62  );
63 
64  $this->assertEquals(
65  0,
66  count($inbox->getChildren())
67  );
68  $backend->createSchedulingObject('principals/user1', 'schedule1.ics', "BEGIN:VCALENDAR\r\nEND:VCALENDAR");
69  $this->assertEquals(
70  1,
71  count($inbox->getChildren())
72  );
73  $this->assertInstanceOf('Sabre\CalDAV\Schedule\SchedulingObject', $inbox->getChildren()[0]);
74  $this->assertEquals(
75  'schedule1.ics',
76  $inbox->getChildren()[0]->getName()
77  );
78 
79  }
80 
84  function testCreateFile() {
85 
86  $backend = new CalDAV\Backend\MockScheduling();
87  $inbox = new Inbox(
88  $backend,
89  'principals/user1'
90  );
91 
92  $this->assertEquals(
93  0,
94  count($inbox->getChildren())
95  );
96  $inbox->createFile('schedule1.ics', "BEGIN:VCALENDAR\r\nEND:VCALENDAR");
97  $this->assertEquals(
98  1,
99  count($inbox->getChildren())
100  );
101  $this->assertInstanceOf('Sabre\CalDAV\Schedule\SchedulingObject', $inbox->getChildren()[0]);
102  $this->assertEquals(
103  'schedule1.ics',
104  $inbox->getChildren()[0]->getName()
105  );
106 
107  }
108 
112  function testCalendarQuery() {
113 
114  $backend = new CalDAV\Backend\MockScheduling();
115  $inbox = new Inbox(
116  $backend,
117  'principals/user1'
118  );
119 
120  $this->assertEquals(
121  0,
122  count($inbox->getChildren())
123  );
124  $backend->createSchedulingObject('principals/user1', 'schedule1.ics', "BEGIN:VCALENDAR\r\nEND:VCALENDAR");
125  $this->assertEquals(
126  ['schedule1.ics'],
127  $inbox->calendarQuery([
128  'name' => 'VCALENDAR',
129  'comp-filters' => [],
130  'prop-filters' => [],
131  'is-not-defined' => false
132  ])
133  );
134 
135  }
136 }
The CalDAV scheduling inbox.
Definition: Inbox.php:18
testCreateFile()
testGetChildren
Definition: InboxTest.php:84