aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php')
-rw-r--r--vendor/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php98
1 files changed, 98 insertions, 0 deletions
diff --git a/vendor/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php b/vendor/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php
new file mode 100644
index 000000000..8f1451b49
--- /dev/null
+++ b/vendor/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php
@@ -0,0 +1,98 @@
+<?php
+
+namespace Sabre\DAV;
+use Sabre\HTTP;
+
+require_once 'Sabre/DAV/AbstractServer.php';
+require_once 'Sabre/DAV/TestPlugin.php';
+
+class ServerPluginTest extends AbstractServer {
+
+ /**
+ * @var Sabre\DAV\TestPlugin
+ */
+ protected $testPlugin;
+
+ function setUp() {
+
+ parent::setUp();
+
+ $testPlugin = new TestPlugin();
+ $this->server->addPlugin($testPlugin);
+ $this->testPlugin = $testPlugin;
+
+ }
+
+ /**
+ * @covers \Sabre\DAV\ServerPlugin
+ */
+ function testBaseClass() {
+
+ $p = new ServerPluginMock();
+ $this->assertEquals(array(),$p->getFeatures());
+ $this->assertEquals(array(),$p->getHTTPMethods(''));
+
+ }
+
+ function testOptions() {
+
+ $serverVars = array(
+ 'REQUEST_URI' => '/',
+ 'REQUEST_METHOD' => 'OPTIONS',
+ );
+
+ $request = new HTTP\Request($serverVars);
+ $this->server->httpRequest = ($request);
+ $this->server->exec();
+
+ $this->assertEquals(array(
+ 'DAV' => '1, 3, extended-mkcol, drinking',
+ 'MS-Author-Via' => 'DAV',
+ 'Allow' => 'OPTIONS, GET, HEAD, DELETE, PROPFIND, PUT, PROPPATCH, COPY, MOVE, REPORT, BEER, WINE',
+ 'Accept-Ranges' => 'bytes',
+ 'Content-Length' => '0',
+ 'X-Sabre-Version' => Version::VERSION,
+ ),$this->response->headers);
+
+ $this->assertEquals('HTTP/1.1 200 OK',$this->response->status);
+ $this->assertEquals('', $this->response->body);
+ $this->assertEquals('OPTIONS',$this->testPlugin->beforeMethod);
+
+
+ }
+
+ function testGetPlugin() {
+
+ $this->assertEquals($this->testPlugin,$this->server->getPlugin(get_class($this->testPlugin)));
+
+ }
+
+ function testUnknownPlugin() {
+
+ $this->assertNull($this->server->getPlugin('SomeRandomClassName'));
+
+ }
+
+ function testGetSupportedReportSet() {
+
+ $this->assertEquals(array(), $this->testPlugin->getSupportedReportSet('/'));
+
+ }
+
+ function testGetPlugins() {
+
+ $this->assertEquals(
+ array(get_class($this->testPlugin) => $this->testPlugin),
+ $this->server->getPlugins()
+ );
+
+ }
+
+
+}
+
+class ServerPluginMock extends ServerPlugin {
+
+ function initialize(Server $s) { }
+
+}