--- /dev/null
+<?php
+
+require_once 'Sabre/CardDAV/Backend/Mock.php';
+require_once 'Sabre/DAVACL/MockPrincipalBackend.php';
+
+abstract class Sabre_CardDAV_AbstractPluginTest extends PHPUnit_Framework_TestCase {
+
+ /**
+ * @var Sabre_CardDAV_Plugin
+ */
+ protected $plugin;
+ /**
+ * @var Sabre_DAV_Server
+ */
+ protected $server;
+ /**
+ * @var Sabre_CardDAV_MockBackend
+ */
+ protected $backend;
+
+ function setUp() {
+
+ $this->backend = new Sabre_CardDAV_Backend_Mock();
+ $principalBackend = new Sabre_DAVACL_MockPrincipalBackend();
+
+ $tree = array(
+ new Sabre_CardDAV_AddressBookRoot($principalBackend, $this->backend),
+ new Sabre_DAVACL_PrincipalCollection($principalBackend)
+ );
+
+ $this->plugin = new Sabre_CardDAV_Plugin();
+ $this->plugin->directories = array('directory');
+ $this->server = new Sabre_DAV_Server($tree);
+ $this->server->addPlugin($this->plugin);
+ $this->server->debugExceptions = true;
+
+ }
+
+}