ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
LockDiscoveryTest.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Sabre\DAV\Xml\Property;
4 
7 
8 class LockDiscoveryTest extends XmlTest {
9 
10  function testSerialize() {
11 
12  $lock = new LockInfo();
13  $lock->owner = 'hello';
14  $lock->token = 'blabla';
15  $lock->timeout = 600;
16  $lock->created = strtotime('2015-03-25 19:21:00');
17  $lock->scope = LockInfo::EXCLUSIVE;
18  $lock->depth = 0;
19  $lock->uri = 'hi';
20 
21  $prop = new LockDiscovery([$lock]);
22 
23  $xml = $this->write(['{DAV:}root' => $prop]);
24 
25  $this->assertXmlStringEqualsXmlString(
26 '<?xml version="1.0"?>
27 <d:root xmlns:d="DAV:">
28  <d:activelock>
29  <d:lockscope><d:exclusive /></d:lockscope>
30  <d:locktype><d:write /></d:locktype>
31  <d:lockroot>
32  <d:href>/hi</d:href>
33  </d:lockroot>
34  <d:depth>0</d:depth>
35  <d:timeout>Second-600</d:timeout>
36  <d:locktoken>
37  <d:href>opaquelocktoken:blabla</d:href>
38  </d:locktoken>
39  <d:owner>hello</d:owner>
40 
41 
42 </d:activelock>
43 </d:root>
44 ', $xml);
45 
46  }
47 
48  function testSerializeShared() {
49 
50  $lock = new LockInfo();
51  $lock->owner = 'hello';
52  $lock->token = 'blabla';
53  $lock->timeout = 600;
54  $lock->created = strtotime('2015-03-25 19:21:00');
55  $lock->scope = LockInfo::SHARED;
56  $lock->depth = 0;
57  $lock->uri = 'hi';
58 
59  $prop = new LockDiscovery([$lock]);
60 
61  $xml = $this->write(['{DAV:}root' => $prop]);
62 
63  $this->assertXmlStringEqualsXmlString(
64 '<?xml version="1.0"?>
65 <d:root xmlns:d="DAV:">
66  <d:activelock>
67  <d:lockscope><d:shared /></d:lockscope>
68  <d:locktype><d:write /></d:locktype>
69  <d:lockroot>
70  <d:href>/hi</d:href>
71  </d:lockroot>
72  <d:depth>0</d:depth>
73  <d:timeout>Second-600</d:timeout>
74  <d:locktoken>
75  <d:href>opaquelocktoken:blabla</d:href>
76  </d:locktoken>
77  <d:owner>hello</d:owner>
78 
79 
80 </d:activelock>
81 </d:root>
82 ', $xml);
83 
84  }
85 
86 }
const EXCLUSIVE
An exclusive lock.
Definition: LockInfo.php:25
Represents {DAV:}lockdiscovery property.
const SHARED
A shared lock.
Definition: LockInfo.php:20
LockInfo class.
Definition: LockInfo.php:15