]> git.mxchange.org Git - friendica-addons.git/blob - dav/SabreDAV/tests/Sabre/DAVACL/PluginUpdatePropertiesTest.php
ad0d940a5f0d9b15095510395a38dad9a60af536
[friendica-addons.git] / dav / SabreDAV / tests / Sabre / DAVACL / PluginUpdatePropertiesTest.php
1 <?php
2
3 require_once 'Sabre/DAVACL/MockPrincipal.php';
4
5 class Sabre_DAVACL_PluginUpdatePropertiesTest extends PHPUnit_Framework_TestCase {
6
7     public function testUpdatePropertiesPassthrough() {
8
9         $tree = array(
10             new Sabre_DAV_SimpleCollection('foo'),
11         );
12         $server = new Sabre_DAV_Server($tree);
13         $server->addPlugin(new Sabre_DAVACL_Plugin());
14
15         $result = $server->updateProperties('foo', array(
16             '{DAV:}foo' => 'bar',
17         ));
18
19         $expected = array(
20             'href' => 'foo',
21             '403' => array(
22                 '{DAV:}foo' => null,
23             ),
24         );
25
26         $this->assertEquals($expected, $result);
27
28     }
29
30     public function testRemoveGroupMembers() {
31
32         $tree = array(
33             new Sabre_DAVACL_MockPrincipal('foo','foo'),
34         );
35         $server = new Sabre_DAV_Server($tree);
36         $server->addPlugin(new Sabre_DAVACL_Plugin());
37
38         $result = $server->updateProperties('foo', array(
39             '{DAV:}group-member-set' => null,
40         ));
41
42         $expected = array(
43             'href' => 'foo',
44             '200' => array(
45                 '{DAV:}group-member-set' => null,
46             ),
47         );
48
49         $this->assertEquals($expected, $result);
50         $this->assertEquals(array(),$tree[0]->getGroupMemberSet());
51
52     }
53
54     public function testSetGroupMembers() {
55
56         $tree = array(
57             new Sabre_DAVACL_MockPrincipal('foo','foo'),
58         );
59         $server = new Sabre_DAV_Server($tree);
60         $server->addPlugin(new Sabre_DAVACL_Plugin());
61
62         $result = $server->updateProperties('foo', array(
63             '{DAV:}group-member-set' => new Sabre_DAV_Property_HrefList(array('bar','baz')),
64         ));
65
66         $expected = array(
67             'href' => 'foo',
68             '200' => array(
69                 '{DAV:}group-member-set' => null,
70             ),
71         );
72
73         $this->assertEquals($expected, $result);
74         $this->assertEquals(array('bar','baz'),$tree[0]->getGroupMemberSet());
75
76     }
77
78     /**
79      * @expectedException sabre_DAV_Exception
80      */
81     public function testSetBadValue() {
82
83         $tree = array(
84             new Sabre_DAVACL_MockPrincipal('foo','foo'),
85         );
86         $server = new Sabre_DAV_Server($tree);
87         $server->addPlugin(new Sabre_DAVACL_Plugin());
88
89         $result = $server->updateProperties('foo', array(
90             '{DAV:}group-member-set' => new StdClass(),
91         ));
92
93     }
94
95     public function testSetBadNode() {
96
97         $tree = array(
98             new Sabre_DAV_SimpleCollection('foo'),
99         );
100         $server = new Sabre_DAV_Server($tree);
101         $server->addPlugin(new Sabre_DAVACL_Plugin());
102
103         $result = $server->updateProperties('foo', array(
104             '{DAV:}group-member-set' => new Sabre_DAV_Property_HrefList(array('bar','baz')),
105             '{DAV:}bar' => 'baz',
106         ));
107
108         $expected = array(
109             'href' => 'foo',
110             '403' => array(
111                 '{DAV:}group-member-set' => null,
112             ),
113             '424' => array(
114                 '{DAV:}bar' => null,
115             ),
116         );
117
118         $this->assertEquals($expected, $result);
119
120     }
121 }