diff options
Diffstat (limited to 'apps/encryption/tests/lib/crypto/decryptalltest.php')
-rw-r--r-- | apps/encryption/tests/lib/crypto/decryptalltest.php | 133 |
1 files changed, 0 insertions, 133 deletions
diff --git a/apps/encryption/tests/lib/crypto/decryptalltest.php b/apps/encryption/tests/lib/crypto/decryptalltest.php deleted file mode 100644 index 0945692e427..00000000000 --- a/apps/encryption/tests/lib/crypto/decryptalltest.php +++ /dev/null @@ -1,133 +0,0 @@ -<?php -/** - * @author Björn Schießle <schiessle@owncloud.com> - * - * @copyright Copyright (c) 2016, 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 OCA\Encryption\Tests\lib\Crypto; - - -use OCA\Encryption\Crypto\Crypt; -use OCA\Encryption\Crypto\DecryptAll; -use OCA\Encryption\KeyManager; -use OCA\Encryption\Session; -use OCA\Encryption\Util; -use Symfony\Component\Console\Helper\QuestionHelper; -use Test\TestCase; - -class DecryptAllTest extends TestCase { - - /** @var DecryptAll */ - protected $instance; - - /** @var Util | \PHPUnit_Framework_MockObject_MockObject */ - protected $util; - - /** @var KeyManager | \PHPUnit_Framework_MockObject_MockObject */ - protected $keyManager; - - /** @var Crypt | \PHPUnit_Framework_MockObject_MockObject */ - protected $crypt; - - /** @var Session | \PHPUnit_Framework_MockObject_MockObject */ - protected $session; - - /** @var QuestionHelper | \PHPUnit_Framework_MockObject_MockObject */ - protected $questionHelper; - - public function setUp() { - parent::setUp(); - - $this->util = $this->getMockBuilder('OCA\Encryption\Util') - ->disableOriginalConstructor()->getMock(); - $this->keyManager = $this->getMockBuilder('OCA\Encryption\KeyManager') - ->disableOriginalConstructor()->getMock(); - $this->crypt = $this->getMockBuilder('OCA\Encryption\Crypto\Crypt') - ->disableOriginalConstructor()->getMock(); - $this->session = $this->getMockBuilder('OCA\Encryption\Session') - ->disableOriginalConstructor()->getMock(); - $this->questionHelper = $this->getMockBuilder('Symfony\Component\Console\Helper\QuestionHelper') - ->disableOriginalConstructor()->getMock(); - - $this->instance = new DecryptAll( - $this->util, - $this->keyManager, - $this->crypt, - $this->session, - $this->questionHelper - ); - } - - public function testUpdateSession() { - $this->session->expects($this->once())->method('prepareDecryptAll') - ->with('user1', 'key1'); - - $this->invokePrivate($this->instance, 'updateSession', ['user1', 'key1']); - } - - /** - * @dataProvider dataTestGetPrivateKey - * - * @param string $user - * @param string $recoveryKeyId - */ - public function testGetPrivateKey($user, $recoveryKeyId, $masterKeyId) { - $password = 'passwd'; - $recoveryKey = 'recoveryKey'; - $userKey = 'userKey'; - $unencryptedKey = 'unencryptedKey'; - - $this->keyManager->expects($this->any())->method('getRecoveryKeyId') - ->willReturn($recoveryKeyId); - - if ($user === $recoveryKeyId) { - $this->keyManager->expects($this->once())->method('getSystemPrivateKey') - ->with($recoveryKeyId)->willReturn($recoveryKey); - $this->keyManager->expects($this->never())->method('getPrivateKey'); - $this->crypt->expects($this->once())->method('decryptPrivateKey') - ->with($recoveryKey, $password)->willReturn($unencryptedKey); - } elseif ($user === $masterKeyId) { - $this->keyManager->expects($this->once())->method('getSystemPrivateKey') - ->with($masterKeyId)->willReturn($masterKey); - $this->keyManager->expects($this->never())->method('getPrivateKey'); - $this->crypt->expects($this->once())->method('decryptPrivateKey') - ->with($masterKey, $password, $masterKeyId)->willReturn($unencryptedKey); - - } else { - $this->keyManager->expects($this->never())->method('getSystemPrivateKey'); - $this->keyManager->expects($this->once())->method('getPrivateKey') - ->with($user)->willReturn($userKey); - $this->crypt->expects($this->once())->method('decryptPrivateKey') - ->with($userKey, $password, $user)->willReturn($unencryptedKey); - } - - $this->assertSame($unencryptedKey, - $this->invokePrivate($this->instance, 'getPrivateKey', [$user, $password]) - ); - } - - public function dataTestGetPrivateKey() { - return [ - ['user1', 'recoveryKey', 'masterKeyId'], - ['recoveryKeyId', 'recoveryKeyId', 'masterKeyId'], - ['masterKeyId', 'masterKeyId', 'masterKeyId'] - ]; - } - -} |