From 987bc138df89be2d0afdf268ab5c991b1bbe830b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Thomas=20M=C3=BCller?= Date: Wed, 22 Apr 2015 12:12:27 +0200 Subject: [PATCH] calling renameKeys() on directory level as well - fixes #15778 --- .../files/storage/wrapper/encryption.php | 10 +++------- tests/lib/files/storage/wrapper/encryption.php | 17 +++++++++++++++-- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/lib/private/files/storage/wrapper/encryption.php b/lib/private/files/storage/wrapper/encryption.php index 14c9df9c6f7..04eb5fceedd 100644 --- a/lib/private/files/storage/wrapper/encryption.php +++ b/lib/private/files/storage/wrapper/encryption.php @@ -215,11 +215,8 @@ class Encryption extends Wrapper { if (isset($this->unencryptedSize[$source])) { $this->unencryptedSize[$target] = $this->unencryptedSize[$source]; } - $encryptionModule = $this->getEncryptionModule($path2); - if ($encryptionModule) { - $keyStorage = $this->getKeyStorage($encryptionModule->getId()); - $keyStorage->renameKeys($source, $target); - } + $keyStorage = $this->getKeyStorage(); + $keyStorage->renameKeys($source, $target); } return $result; @@ -438,8 +435,7 @@ class Encryption extends Wrapper { * @return \OCP\Encryption\Keys\IStorage */ protected function getKeyStorage() { - $keyStorage = \OC::$server->getEncryptionKeyStorage(); - return $keyStorage; + return \OC::$server->getEncryptionKeyStorage(); } } diff --git a/tests/lib/files/storage/wrapper/encryption.php b/tests/lib/files/storage/wrapper/encryption.php index 1082cafbd3d..228c7b08d61 100644 --- a/tests/lib/files/storage/wrapper/encryption.php +++ b/tests/lib/files/storage/wrapper/encryption.php @@ -12,6 +12,11 @@ class Encryption extends \Test\Files\Storage\Storage { */ private $sourceStorage; + /** + * @var \OC\Encryption\Keys\Storage | \PHPUnit_Framework_MockObject_MockObject + */ + private $keyStore; + public function setUp() { parent::setUp(); @@ -54,7 +59,7 @@ class Encryption extends \Test\Files\Storage\Storage { $logger = $this->getMock('\OC\Log'); $this->sourceStorage = new Temporary(array()); - $keyStore = $this->getMockBuilder('\OC\Encryption\Keys\Storage') + $this->keyStore = $this->getMockBuilder('\OC\Encryption\Keys\Storage') ->disableOriginalConstructor()->getMock(); $mount = $this->getMockBuilder('\OC\Files\Mount\MountPoint') ->disableOriginalConstructor() @@ -67,7 +72,7 @@ class Encryption extends \Test\Files\Storage\Storage { 'mountPoint' => '/', 'mount' => $mount ], - $encryptionManager, $util, $logger, $file, null, $keyStore + $encryptionManager, $util, $logger, $file, null, $this->keyStore ); } @@ -91,6 +96,14 @@ class Encryption extends \Test\Files\Storage\Storage { $encryptionModule->expects($this->any())->method('getUnencryptedBlockSize')->willReturn(8192); return $encryptionModule; } + + public function testRename() { + $this->keyStore + ->expects($this->once()) + ->method('renameKeys'); + $this->instance->mkdir('folder'); + $this->instance->rename('folder', 'flodder'); + } } // -- 2.39.5