diff --git a/apps/files_encryption/lib/keymanager.php b/apps/files_encryption/lib/keymanager.php
index 07ac1a7bd592b6938579f1421bd8a33672a9bc26..98986d1486f376bcbfacb5000e7d8bc8da7dae3a 100755
--- a/apps/files_encryption/lib/keymanager.php
+++ b/apps/files_encryption/lib/keymanager.php
@@ -516,7 +516,7 @@ class Keymanager {
 	 * @param string|boolean $path
 	 * @param string $basePath
 	 */
-	public static function keySetPreparation(\OC\Files\View $view, $path, $basePath, $userId) {
+	protected static function keySetPreparation(\OC\Files\View $view, $path, $basePath, $userId) {
 
 		$targetPath = ltrim($path, '/');
 
diff --git a/apps/files_encryption/tests/keymanager.php b/apps/files_encryption/tests/keymanager.php
index 2bd2ddc8e68d13d5973e5a23748edc1750c4bcf4..0c025443cd65f24491a28ce9197c5a42350b2e53 100644
--- a/apps/files_encryption/tests/keymanager.php
+++ b/apps/files_encryption/tests/keymanager.php
@@ -239,11 +239,30 @@ class Test_Encryption_Keymanager extends \PHPUnit_Framework_TestCase {
 		\OC_FileProxy::$enabled = true;
 
 		// cleanup
-		$this->view->unlink('/admin/files/folder1');
+		$this->view->deleteAll('/admin/files/folder1');
 
 		// change encryption proxy to previous state
 		\OC_FileProxy::$enabled = $proxyStatus;
 	}
+
+	function testKeySetPreperation() {
+		$basePath = '/'.Test_Encryption_Keymanager::TEST_USER.'/files';
+		$path = '/folder1/subfolder/subsubfolder';
+
+		$this->assertFalse($this->view->is_dir($basePath . '/testKeySetPreperation'));
+
+		$result = TestProtectedKeymanagerMethods::testKeySetPreperation($this->view, $path, $basePath);
+
+		// return path without leading slash
+		$this->assertSame('folder1/subfolder/subsubfolder', $result);
+
+		// check if directory structure was created
+		$this->assertTrue($this->view->is_dir($basePath . '/folder1/subfolder/subsubfolder'));
+
+		// cleanup
+		$this->view->deleteAll($basePath . '/folder1');
+
+	}
 }
 
 /**
@@ -257,4 +276,13 @@ class TestProtectedKeymanagerMethods extends \OCA\Encryption\Keymanager {
 	public static function testGetFilenameFromShareKey($sharekey) {
 		return self::getFilenameFromShareKey($sharekey);
 	}
+
+	/**
+	 * @param \OC\Files\View $view relative to data/
+	 * @param string $path
+	 * @param string $basePath
+	 */
+	public static function testKeySetPreperation($view, $path, $basePath) {
+		return self::keySetPreparation($view, $path, $basePath, '');
+	}
 }