From 0c6fcf8fe4d9655b097e46d5aeb3b640a3664f06 Mon Sep 17 00:00:00 2001 From: Sujith H Date: Thu, 5 Dec 2019 13:48:51 +0530 Subject: [PATCH] Fix unit test when restorePossible set for masterkey Fix unit test when restorePossible is set for masterkey encryption. Signed-off-by: Sujith H --- settings/Controller/UsersController.php | 28 +++++++------------ .../Controller/UsersControllerTest.php | 2 +- 2 files changed, 11 insertions(+), 19 deletions(-) diff --git a/settings/Controller/UsersController.php b/settings/Controller/UsersController.php index 81fb8ded4f86..b1c4c7ae8b98 100644 --- a/settings/Controller/UsersController.php +++ b/settings/Controller/UsersController.php @@ -84,8 +84,6 @@ class UsersController extends Controller { private $fromMailAddress; /** @var IURLGenerator */ private $urlGenerator; - /** @var bool contains the state of the encryption app */ - private $isEncryptionAppEnabled; /** @var bool contains the state of the admin recovery setting */ private $isRestoreEnabled = false; /** @var IAvatarManager */ @@ -153,8 +151,8 @@ public function __construct($appName, $this->eventDispatcher = $eventDispatcher; // check for encryption state - TODO see formatUserForIndex - $this->isEncryptionAppEnabled = $appManager->isEnabledForUser('encryption'); - if ($this->isEncryptionAppEnabled) { + if ($appManager->isEnabledForUser('encryption')) + { // putting this directly in empty is possible in PHP 5.5+ $result = $config->getAppValue('encryption', 'recoveryAdminEnabled', 0); $this->isRestoreEnabled = !empty($result); @@ -176,23 +174,17 @@ private function formatUserForIndex(IUser $user, array $userGroups = null) { // below $restorePossible = false; - if ($this->isEncryptionAppEnabled) { - if ($this->isRestoreEnabled) { - // check for the users recovery setting - $recoveryMode = $this->config->getUserValue($user->getUID(), 'encryption', 'recoveryEnabled', '0'); - // method call inside empty is possible with PHP 5.5+ - $recoveryModeEnabled = !empty($recoveryMode); - if ($recoveryModeEnabled) { - // user also has recovery mode enabled - $restorePossible = true; - } - } else { - // masterkey encryption is active + if ($this->isRestoreEnabled) { + // check for the users recovery setting + $recoveryMode = $this->config->getUserValue($user->getUID(), 'encryption', 'recoveryEnabled', '0'); + // method call inside empty is possible with PHP 5.5+ + $recoveryModeEnabled = !empty($recoveryMode); + if ($recoveryModeEnabled) { + // user also has recovery mode enabled $restorePossible = true; } } else { - // recovery is possible if encryption is disabled (plain files are - // available) + // masterkey encryption or no encryption in place $restorePossible = true; } diff --git a/tests/Settings/Controller/UsersControllerTest.php b/tests/Settings/Controller/UsersControllerTest.php index 289802cab7d7..9b8f830428f5 100644 --- a/tests/Settings/Controller/UsersControllerTest.php +++ b/tests/Settings/Controller/UsersControllerTest.php @@ -1715,7 +1715,7 @@ public function testRestoreNotPossibleWithoutAdminRestore() { ) ->will($this->returnValue(true)); - $expectedResult['isRestoreDisabled'] = true; + $expectedResult['isRestoreDisabled'] = false; $subadmin = $this->getMockBuilder('\OC\SubAdmin') ->disableOriginalConstructor()