diff options
author | Bjoern Schiessle <schiessle@owncloud.com> | 2015-08-24 15:57:03 +0200 |
---|---|---|
committer | Bjoern Schiessle <schiessle@owncloud.com> | 2015-08-26 14:58:22 +0200 |
commit | e51fe617d89fd515e9e6836f205f67c613939b41 (patch) | |
tree | 66eea94044387e11bdc18ebe4f7ac3773c6f101b /tests | |
parent | 8c08dd0ac26290829b10e28c333358ae10d953eb (diff) | |
download | nextcloud-server-e51fe617d89fd515e9e6836f205f67c613939b41.tar.gz nextcloud-server-e51fe617d89fd515e9e6836f205f67c613939b41.zip |
copy always file by file to encrypt/decrypt it if needed
Diffstat (limited to 'tests')
-rw-r--r-- | tests/lib/files/storage/wrapper/encryption.php | 61 |
1 files changed, 8 insertions, 53 deletions
diff --git a/tests/lib/files/storage/wrapper/encryption.php b/tests/lib/files/storage/wrapper/encryption.php index 3d1bf1077a2..36a5b288c64 100644 --- a/tests/lib/files/storage/wrapper/encryption.php +++ b/tests/lib/files/storage/wrapper/encryption.php @@ -241,59 +241,14 @@ class Encryption extends \Test\Files\Storage\Storage { $this->instance->rename($source, $target); } - /** - * @dataProvider dataTestCopyAndRename - * - * @param string $source - * @param string $target - * @param $encryptionEnabled - * @param boolean $copyKeysReturn - * @param boolean $shouldUpdate - */ - public function testCopyEncryption($source, - $target, - $encryptionEnabled, - $copyKeysReturn, - $shouldUpdate) { - - if ($encryptionEnabled) { - $this->keyStore - ->expects($this->once()) - ->method('copyKeys') - ->willReturn($copyKeysReturn); - $this->cache->expects($this->atLeastOnce()) - ->method('put') - ->willReturnCallback(function($path, $data) { - $this->assertArrayHasKey('encrypted', $data); - $this->assertTrue($data['encrypted']); - }); - } else { - $this->cache->expects($this->never())->method('put'); - $this->keyStore->expects($this->never())->method('copyKeys'); - } - $this->util->expects($this->any()) - ->method('isFile')->willReturn(true); - $this->util->expects($this->any()) - ->method('isExcluded')->willReturn(false); - $this->encryptionManager->expects($this->once()) - ->method('isEnabled')->willReturn($encryptionEnabled); - if ($shouldUpdate) { - $this->update->expects($this->once()) - ->method('update'); - } else { - $this->update->expects($this->never()) - ->method('update'); - } - - $this->instance->mkdir($source); - $this->instance->mkdir(dirname($target)); - $this->instance->copy($source, $target); - - if ($encryptionEnabled) { - $this->assertSame($this->dummySize, - $this->instance->filesize($target) - ); - } + public function testCopyEncryption() { + $this->instance->file_put_contents('source.txt', 'bar'); + $this->instance->copy('source.txt', 'target.txt'); + $this->assertSame('bar', $this->instance->file_get_contents('target.txt')); + $targetMeta = $this->instance->getMetaData('target.txt'); + $sourceMeta = $this->instance->getMetaData('source.txt'); + $this->assertSame($sourceMeta['encrypted'], $targetMeta['encrypted']); + $this->assertSame($sourceMeta['size'], $targetMeta['size']); } /** |