9 {
10
11 $uri = 'foo';
12 $privileges = [
13 '{DAV:}read',
14 '{DAV:}write',
15 ];
16 $ex = new NeedPrivileges($uri, $privileges);
17
19 $dom = new \DOMDocument('1.0', 'utf-8');
20 $root = $dom->createElementNS(
'DAV:',
'd:root');
21 $dom->appendChild(
$root);
22
24
25 $xpaths = [
26 '/d:root' => 1,
27 '/d:root/d:need-privileges' => 1,
28 '/d:root/d:need-privileges/d:resource' => 2,
29 '/d:root/d:need-privileges/d:resource/d:href' => 2,
30 '/d:root/d:need-privileges/d:resource/d:privilege' => 2,
31 '/d:root/d:need-privileges/d:resource/d:privilege/d:read' => 1,
32 '/d:root/d:need-privileges/d:resource/d:privilege/d:write' => 1,
33 ];
34
35
36 $dom2 = new \DOMDocument('1.0', 'utf-8');
37 $dom2->loadXML($dom->saveXML());
38
39 $dxpath = new \DOMXPath($dom2);
40 $dxpath->registerNamespace('d', 'DAV:');
41 foreach ($xpaths as $xpath => $count) {
42
43 $this->assertEquals($count, $dxpath->query($xpath)->length, 'Looking for : ' . $xpath . ', we could only find ' . $dxpath->query($xpath)->length . ' elements, while we expected ' . $count);
44
45 }
46
47 }