summaryrefslogtreecommitdiffstats
path: root/tests/lib/testmoveablemountpoint.php
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2015-06-19 13:54:00 +0200
committerVincent Petry <pvince81@owncloud.com>2015-06-25 16:33:02 +0200
commit538e466c306ddc1e1ee497cbe43770e084df1dcd (patch)
tree10f0427c90e83c85070f647a4279ca991fc877c0 /tests/lib/testmoveablemountpoint.php
parent58439c337c2e242c199f153d0529e0b0b482f03a (diff)
downloadnextcloud-server-538e466c306ddc1e1ee497cbe43770e084df1dcd.tar.gz
nextcloud-server-538e466c306ddc1e1ee497cbe43770e084df1dcd.zip
Keep shared locks in post hooks
Instead of unlocking after the file operation, change exclusive locks back to shared locks during post hooks, and unlock after that. Also added unit tests to test locking in pre-hooks, during operation and post-hooks.
Diffstat (limited to 'tests/lib/testmoveablemountpoint.php')
-rw-r--r--tests/lib/testmoveablemountpoint.php49
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/lib/testmoveablemountpoint.php b/tests/lib/testmoveablemountpoint.php
new file mode 100644
index 00000000000..262016b76c1
--- /dev/null
+++ b/tests/lib/testmoveablemountpoint.php
@@ -0,0 +1,49 @@
+<?php
+/**
+ * @author Vincent Petry <pvince81@owncloud.com>
+ *
+ * @copyright Copyright (c) 2015, ownCloud, Inc.
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+
+namespace Test;
+
+use OC\Files\Mount;
+
+/**
+ * Test moveable mount for mocking
+ */
+class TestMoveableMountPoint extends Mount\MountPoint implements Mount\MoveableMount {
+
+ /**
+ * Move the mount point to $target
+ *
+ * @param string $target the target mount point
+ * @return bool
+ */
+ public function moveMount($target) {
+ $this->setMountPoint($target);
+ }
+
+ /**
+ * Remove the mount points
+ *
+ * @return mixed
+ * @return bool
+ */
+ public function removeMount() {
+ }
+}