ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
Sabre\DAV\ServerPreconditionsTest Class Reference
+ Inheritance diagram for Sabre\DAV\ServerPreconditionsTest:
+ Collaboration diagram for Sabre\DAV\ServerPreconditionsTest:

Public Member Functions

 testIfMatchNoNode ()
 @expectedException Sabre\DAV\Exception\PreconditionFailed More...
 
 testIfMatchHasNode ()
 
 testIfMatchWrongEtag ()
 @expectedException Sabre\DAV\Exception\PreconditionFailed More...
 
 testIfMatchCorrectEtag ()
 
 testIfMatchEvolutionEtag ()
 Evolution sometimes uses " instead of " for If-Match headers. More...
 
 testIfMatchMultiple ()
 
 testIfNoneMatchNoNode ()
 
 testIfNoneMatchHasNode ()
 @expectedException Sabre\DAV\Exception\PreconditionFailed More...
 
 testIfNoneMatchWrongEtag ()
 
 testIfNoneMatchWrongEtagMultiple ()
 
 testIfNoneMatchCorrectEtag ()
 @expectedException Sabre\DAV\Exception\PreconditionFailed More...
 
 testIfNoneMatchCorrectEtagMultiple ()
 @expectedException Sabre\DAV\Exception\PreconditionFailed More...
 
 testIfNoneMatchCorrectEtagAsGet ()
 
 testNoneMatchCorrectEtagEnsureSapiSent ()
 This was a test written for issue #515. More...
 
 testIfModifiedSinceUnModified ()
 
 testIfModifiedSinceModified ()
 
 testIfModifiedSinceInvalidDate ()
 
 testIfModifiedSinceInvalidDate2 ()
 
 testIfUnmodifiedSinceUnModified ()
 
 testIfUnmodifiedSinceModified ()
 @expectedException Sabre\DAV\Exception\PreconditionFailed More...
 
 testIfUnmodifiedSinceInvalidDate ()
 

Detailed Description

Definition at line 9 of file ServerPreconditionTest.php.

Member Function Documentation

◆ testIfMatchCorrectEtag()

Sabre\DAV\ServerPreconditionsTest::testIfMatchCorrectEtag ( )

Definition at line 51 of file ServerPreconditionTest.php.

51 {
52
53 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
54 $server = new Server($root);
55 $httpRequest = new HTTP\Request('GET', '/foo', ['If-Match' => '"abc123"']);
56 $httpResponse = new HTTP\Response();
57 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
58
59 }
$root
Definition: sabredav.php:45
$server
Definition: sabredav.php:48

References $root, and $server.

◆ testIfMatchEvolutionEtag()

Sabre\DAV\ServerPreconditionsTest::testIfMatchEvolutionEtag ( )

Evolution sometimes uses " instead of " for If-Match headers.

@depends testIfMatchCorrectEtag

Definition at line 66 of file ServerPreconditionTest.php.

66 {
67
68 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
69 $server = new Server($root);
70 $httpRequest = new HTTP\Request('GET', '/foo', ['If-Match' => '\\"abc123\\"']);
71 $httpResponse = new HTTP\Response();
72 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
73
74 }

References $root, and $server.

◆ testIfMatchHasNode()

Sabre\DAV\ServerPreconditionsTest::testIfMatchHasNode ( )

Definition at line 26 of file ServerPreconditionTest.php.

26 {
27
28 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
29 $server = new Server($root);
30 $httpRequest = new HTTP\Request('GET', '/foo', ['If-Match' => '*']);
31 $httpResponse = new HTTP\Response();
32 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
33
34 }

References $root, and $server.

◆ testIfMatchMultiple()

Sabre\DAV\ServerPreconditionsTest::testIfMatchMultiple ( )

Definition at line 78 of file ServerPreconditionTest.php.

78 {
79
80 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
81 $server = new Server($root);
82 $httpRequest = new HTTP\Request('GET', '/foo', ['If-Match' => '"hellothere", "abc123"']);
83 $httpResponse = new HTTP\Response();
84 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
85
86 }

References $root, and $server.

◆ testIfMatchNoNode()

Sabre\DAV\ServerPreconditionsTest::testIfMatchNoNode ( )

@expectedException Sabre\DAV\Exception\PreconditionFailed

Definition at line 14 of file ServerPreconditionTest.php.

14 {
15
16 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
17 $server = new Server($root);
18 $httpRequest = new HTTP\Request('GET', '/bar', ['If-Match' => '*']);
19 $httpResponse = new HTTP\Response();
20 $server->checkPreconditions($httpRequest, $httpResponse);
21
22 }

References $root, and $server.

◆ testIfMatchWrongEtag()

Sabre\DAV\ServerPreconditionsTest::testIfMatchWrongEtag ( )

@expectedException Sabre\DAV\Exception\PreconditionFailed

Definition at line 39 of file ServerPreconditionTest.php.

39 {
40
41 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
42 $server = new Server($root);
43 $httpRequest = new HTTP\Request('GET', '/foo', ['If-Match' => '1234']);
44 $httpResponse = new HTTP\Response();
45 $server->checkPreconditions($httpRequest, $httpResponse);
46
47 }

References $root, and $server.

◆ testIfModifiedSinceInvalidDate()

Sabre\DAV\ServerPreconditionsTest::testIfModifiedSinceInvalidDate ( )

Definition at line 242 of file ServerPreconditionTest.php.

242 {
243
244 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
245 $server = new Server($root);
246 $httpRequest = HTTP\Sapi::createFromServerArray([
247 'HTTP_IF_MODIFIED_SINCE' => 'Your mother',
248 'REQUEST_URI' => '/foo'
249 ]);
250 $httpResponse = new HTTP\ResponseMock();
251
252 // Invalid dates must be ignored, so this should return true
253 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
254
255 }
static createFromServerArray(array $serverArray)
This static method will create a new Request object, based on a PHP $_SERVER array.
Definition: Sapi.php:107

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testIfModifiedSinceInvalidDate2()

Sabre\DAV\ServerPreconditionsTest::testIfModifiedSinceInvalidDate2 ( )

Definition at line 259 of file ServerPreconditionTest.php.

259 {
260
261 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
262 $server = new Server($root);
263 $httpRequest = HTTP\Sapi::createFromServerArray([
264 'HTTP_IF_MODIFIED_SINCE' => 'Sun, 06 Nov 1994 08:49:37 EST',
265 'REQUEST_URI' => '/foo'
266 ]);
267 $httpResponse = new HTTP\ResponseMock();
268 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
269
270 }

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testIfModifiedSinceModified()

Sabre\DAV\ServerPreconditionsTest::testIfModifiedSinceModified ( )

Definition at line 226 of file ServerPreconditionTest.php.

226 {
227
228 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
229 $server = new Server($root);
230 $httpRequest = HTTP\Sapi::createFromServerArray([
231 'HTTP_IF_MODIFIED_SINCE' => 'Tue, 06 Nov 1984 08:49:37 GMT',
232 'REQUEST_URI' => '/foo'
233 ]);
234
235 $httpResponse = new HTTP\ResponseMock();
236 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
237
238 }

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testIfModifiedSinceUnModified()

Sabre\DAV\ServerPreconditionsTest::testIfModifiedSinceUnModified ( )

Definition at line 205 of file ServerPreconditionTest.php.

205 {
206
207 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
208 $server = new Server($root);
209 $httpRequest = HTTP\Sapi::createFromServerArray([
210 'HTTP_IF_MODIFIED_SINCE' => 'Sun, 06 Nov 1994 08:49:37 GMT',
211 'REQUEST_URI' => '/foo'
212 ]);
213 $server->httpResponse = new HTTP\ResponseMock();
214 $this->assertFalse($server->checkPreconditions($httpRequest, $server->httpResponse));
215
216 $this->assertEquals(304, $server->httpResponse->status);
217 $this->assertEquals([
218 'Last-Modified' => ['Sat, 06 Apr 1985 23:30:00 GMT'],
219 ], $server->httpResponse->getHeaders());
220
221 }

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testIfNoneMatchCorrectEtag()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchCorrectEtag ( )

@expectedException Sabre\DAV\Exception\PreconditionFailed

Definition at line 140 of file ServerPreconditionTest.php.

140 {
141
142 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
143 $server = new Server($root);
144 $httpRequest = new HTTP\Request('POST', '/foo', ['If-None-Match' => '"abc123"']);
145 $httpResponse = new HTTP\Response();
146 $server->checkPreconditions($httpRequest, $httpResponse);
147
148 }

References $root, and $server.

◆ testIfNoneMatchCorrectEtagAsGet()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchCorrectEtagAsGet ( )

Definition at line 165 of file ServerPreconditionTest.php.

165 {
166
167 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
168 $server = new Server($root);
169 $httpRequest = new HTTP\Request('GET', '/foo', ['If-None-Match' => '"abc123"']);
170 $server->httpResponse = new HTTP\ResponseMock();
171
172 $this->assertFalse($server->checkPreconditions($httpRequest, $server->httpResponse));
173 $this->assertEquals(304, $server->httpResponse->getStatus());
174 $this->assertEquals(['ETag' => ['"abc123"']], $server->httpResponse->getHeaders());
175
176 }

References $root, and $server.

◆ testIfNoneMatchCorrectEtagMultiple()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchCorrectEtagMultiple ( )

@expectedException Sabre\DAV\Exception\PreconditionFailed

Definition at line 153 of file ServerPreconditionTest.php.

153 {
154
155 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
156 $server = new Server($root);
157 $httpRequest = new HTTP\Request('POST', '/foo', ['If-None-Match' => '"1234, "abc123"']);
158 $httpResponse = new HTTP\Response();
159 $server->checkPreconditions($httpRequest, $httpResponse);
160
161 }

References $root, and $server.

◆ testIfNoneMatchHasNode()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchHasNode ( )

@expectedException Sabre\DAV\Exception\PreconditionFailed

Definition at line 103 of file ServerPreconditionTest.php.

103 {
104
105 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
106 $server = new Server($root);
107 $httpRequest = new HTTP\Request('POST', '/foo', ['If-None-Match' => '*']);
108 $httpResponse = new HTTP\Response();
109 $server->checkPreconditions($httpRequest, $httpResponse);
110
111 }

References $root, and $server.

◆ testIfNoneMatchNoNode()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchNoNode ( )

Definition at line 90 of file ServerPreconditionTest.php.

90 {
91
92 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
93 $server = new Server($root);
94 $httpRequest = new HTTP\Request('GET', '/bar', ['If-None-Match' => '*']);
95 $httpResponse = new HTTP\Response();
96 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
97
98 }

References $root, and $server.

◆ testIfNoneMatchWrongEtag()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchWrongEtag ( )

Definition at line 115 of file ServerPreconditionTest.php.

115 {
116
117 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
118 $server = new Server($root);
119 $httpRequest = new HTTP\Request('POST', '/foo', ['If-None-Match' => '"1234"']);
120 $httpResponse = new HTTP\Response();
121 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
122
123 }

References $root, and $server.

◆ testIfNoneMatchWrongEtagMultiple()

Sabre\DAV\ServerPreconditionsTest::testIfNoneMatchWrongEtagMultiple ( )

Definition at line 127 of file ServerPreconditionTest.php.

127 {
128
129 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
130 $server = new Server($root);
131 $httpRequest = new HTTP\Request('POST', '/foo', ['If-None-Match' => '"1234", "5678"']);
132 $httpResponse = new HTTP\Response();
133 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
134
135 }

References $root, and $server.

◆ testIfUnmodifiedSinceInvalidDate()

Sabre\DAV\ServerPreconditionsTest::testIfUnmodifiedSinceInvalidDate ( )

Definition at line 307 of file ServerPreconditionTest.php.

307 {
308
309 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
310 $server = new Server($root);
311 $httpRequest = HTTP\Sapi::createFromServerArray([
312 'HTTP_IF_UNMODIFIED_SINCE' => 'Sun, 06 Nov 1984 08:49:37 CET',
313 'REQUEST_URI' => '/foo'
314 ]);
315 $httpResponse = new HTTP\ResponseMock();
316 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
317
318 }

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testIfUnmodifiedSinceModified()

Sabre\DAV\ServerPreconditionsTest::testIfUnmodifiedSinceModified ( )

@expectedException Sabre\DAV\Exception\PreconditionFailed

Definition at line 292 of file ServerPreconditionTest.php.

292 {
293
294 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
295 $server = new Server($root);
296 $httpRequest = HTTP\Sapi::createFromServerArray([
297 'HTTP_IF_UNMODIFIED_SINCE' => 'Tue, 06 Nov 1984 08:49:37 GMT',
298 'REQUEST_URI' => '/foo'
299 ]);
300 $httpResponse = new HTTP\ResponseMock();
301 $server->checkPreconditions($httpRequest, $httpResponse);
302
303 }

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testIfUnmodifiedSinceUnModified()

Sabre\DAV\ServerPreconditionsTest::testIfUnmodifiedSinceUnModified ( )

Definition at line 275 of file ServerPreconditionTest.php.

275 {
276
277 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
278 $server = new Server($root);
279 $httpRequest = HTTP\Sapi::createFromServerArray([
280 'HTTP_IF_UNMODIFIED_SINCE' => 'Sun, 06 Nov 1994 08:49:37 GMT',
281 'REQUEST_URI' => '/foo'
282 ]);
283 $httpResponse = new HTTP\Response();
284 $this->assertTrue($server->checkPreconditions($httpRequest, $httpResponse));
285
286 }

References $root, $server, and Sabre\HTTP\Sapi\createFromServerArray().

+ Here is the call graph for this function:

◆ testNoneMatchCorrectEtagEnsureSapiSent()

Sabre\DAV\ServerPreconditionsTest::testNoneMatchCorrectEtagEnsureSapiSent ( )

This was a test written for issue #515.

Definition at line 181 of file ServerPreconditionTest.php.

181 {
182
183 $root = new SimpleCollection('root', [new ServerPreconditionsNode()]);
184 $server = new Server($root);
185 $server->sapi = new HTTP\SapiMock();
187 $httpRequest = new HTTP\Request('GET', '/foo', ['If-None-Match' => '"abc123"']);
188 $server->httpRequest = $httpRequest;
189 $server->httpResponse = new HTTP\ResponseMock();
190
191 $server->exec();
192
193 $this->assertFalse($server->checkPreconditions($httpRequest, $server->httpResponse));
194 $this->assertEquals(304, $server->httpResponse->getStatus());
195 $this->assertEquals([
196 'ETag' => ['"abc123"'],
197 'X-Sabre-Version' => [Version::VERSION],
198 ], $server->httpResponse->getHeaders());
199 $this->assertEquals(1, HTTP\SapiMock::$sent);
200
201 }
const VERSION
Full version number.
Definition: Version.php:17

References $root, Sabre\HTTP\SapiMock\$sent, $server, and Sabre\DAV\Version\VERSION.


The documentation for this class was generated from the following file: