3 class Sabre_DAVACL_Property_PrincipalTest extends PHPUnit_Framework_TestCase {
5 function testSimple() {
7 $principal = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::UNAUTHENTICATED);
8 $this->assertEquals(Sabre_DAVACL_Property_Principal::UNAUTHENTICATED, $principal->getType());
9 $this->assertNull($principal->getHref());
11 $principal = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::AUTHENTICATED);
12 $this->assertEquals(Sabre_DAVACL_Property_Principal::AUTHENTICATED, $principal->getType());
13 $this->assertNull($principal->getHref());
15 $principal = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::HREF,'admin');
16 $this->assertEquals(Sabre_DAVACL_Property_Principal::HREF, $principal->getType());
17 $this->assertEquals('admin',$principal->getHref());
23 * @expectedException Sabre_DAV_Exception
25 function testNoHref() {
27 $principal = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::HREF);
34 function testSerializeUnAuthenticated() {
36 $prin = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::UNAUTHENTICATED);
38 $doc = new DOMDocument();
39 $root = $doc->createElement('d:principal');
40 $root->setAttribute('xmlns:d','DAV:');
42 $doc->appendChild($root);
43 $objectTree = new Sabre_DAV_ObjectTree(new Sabre_DAV_SimpleCollection('rootdir'));
44 $server = new Sabre_DAV_Server($objectTree);
46 $prin->serialize($server, $root);
48 $xml = $doc->saveXML();
51 '<?xml version="1.0"?>
52 <d:principal xmlns:d="DAV:">' .
53 '<d:unauthenticated/>' .
61 * @depends testSerializeUnAuthenticated
63 function testSerializeAuthenticated() {
65 $prin = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::AUTHENTICATED);
67 $doc = new DOMDocument();
68 $root = $doc->createElement('d:principal');
69 $root->setAttribute('xmlns:d','DAV:');
71 $doc->appendChild($root);
72 $objectTree = new Sabre_DAV_ObjectTree(new Sabre_DAV_SimpleCollection('rootdir'));
73 $server = new Sabre_DAV_Server($objectTree);
75 $prin->serialize($server, $root);
77 $xml = $doc->saveXML();
80 '<?xml version="1.0"?>
81 <d:principal xmlns:d="DAV:">' .
82 '<d:authenticated/>' .
90 * @depends testSerializeUnAuthenticated
92 function testSerializeHref() {
94 $prin = new Sabre_DAVACL_Property_Principal(Sabre_DAVACL_Property_Principal::HREF,'principals/admin');
96 $doc = new DOMDocument();
97 $root = $doc->createElement('d:principal');
98 $root->setAttribute('xmlns:d','DAV:');
100 $doc->appendChild($root);
101 $objectTree = new Sabre_DAV_ObjectTree(new Sabre_DAV_SimpleCollection('rootdir'));
102 $server = new Sabre_DAV_Server($objectTree);
104 $prin->serialize($server, $root);
106 $xml = $doc->saveXML();
109 '<?xml version="1.0"?>
110 <d:principal xmlns:d="DAV:">' .
111 '<d:href>/principals/admin</d:href>' .
117 function testUnserializeHref() {
119 $xml = '<?xml version="1.0"?>
120 <d:principal xmlns:d="DAV:">' .
121 '<d:href>/principals/admin</d:href>' .
124 $dom = Sabre_DAV_XMLUtil::loadDOMDocument($xml);
126 $principal = Sabre_DAVACL_Property_Principal::unserialize($dom->firstChild);
127 $this->assertEquals(Sabre_DAVACL_Property_Principal::HREF, $principal->getType());
128 $this->assertEquals('/principals/admin', $principal->getHref());
132 function testUnserializeAuthenticated() {
134 $xml = '<?xml version="1.0"?>
135 <d:principal xmlns:d="DAV:">' .
136 ' <d:authenticated />' .
139 $dom = Sabre_DAV_XMLUtil::loadDOMDocument($xml);
141 $principal = Sabre_DAVACL_Property_Principal::unserialize($dom->firstChild);
142 $this->assertEquals(Sabre_DAVACL_Property_Principal::AUTHENTICATED, $principal->getType());
146 function testUnserializeUnauthenticated() {
148 $xml = '<?xml version="1.0"?>
149 <d:principal xmlns:d="DAV:">' .
150 ' <d:unauthenticated />' .
153 $dom = Sabre_DAV_XMLUtil::loadDOMDocument($xml);
155 $principal = Sabre_DAVACL_Property_Principal::unserialize($dom->firstChild);
156 $this->assertEquals(Sabre_DAVACL_Property_Principal::UNAUTHENTICATED, $principal->getType());
161 * @expectedException Sabre_DAV_Exception_BadRequest
163 function testUnserializeUnknown() {
165 $xml = '<?xml version="1.0"?>
166 <d:principal xmlns:d="DAV:">' .
170 $dom = Sabre_DAV_XMLUtil::loadDOMDocument($xml);
172 Sabre_DAVACL_Property_Principal::unserialize($dom->firstChild);