ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
InboxTest.php
Go to the documentation of this file.
1<?php
2
4
6use 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}
An exception for terminatinating execution or to throw for unit testing.
testGetChildren()
@depends testSetup
Definition: InboxTest.php:56
testCreateFile()
@depends testGetChildren
Definition: InboxTest.php:84
testCalendarQuery()
@depends testSetup
Definition: InboxTest.php:112
The CalDAV scheduling inbox.
Definition: Inbox.php:18