aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Traits/EncryptionTrait.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Traits/EncryptionTrait.php')
-rw-r--r--tests/lib/Traits/EncryptionTrait.php55
1 files changed, 36 insertions, 19 deletions
diff --git a/tests/lib/Traits/EncryptionTrait.php b/tests/lib/Traits/EncryptionTrait.php
index 6b74f7ca8ee..44d5dcab8cb 100644
--- a/tests/lib/Traits/EncryptionTrait.php
+++ b/tests/lib/Traits/EncryptionTrait.php
@@ -1,20 +1,27 @@
<?php
+
/**
- * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
+ * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-FileCopyrightText: 2016 ownCloud, Inc.
+ * SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace Test\Traits;
use OC\Encryption\EncryptionWrapper;
-use OC\Files\Filesystem;
+use OC\Files\SetupManager;
use OC\Memcache\ArrayCache;
use OCA\Encryption\AppInfo\Application;
+use OCA\Encryption\Crypto\Encryption;
use OCA\Encryption\KeyManager;
use OCA\Encryption\Users\Setup;
+use OCP\App\IAppManager;
use OCP\Encryption\IManager;
+use OCP\IConfig;
+use OCP\IUserManager;
+use OCP\IUserSession;
+use OCP\Server;
+use Psr\Log\LoggerInterface;
/**
* Enables encryption
@@ -31,13 +38,18 @@ trait EncryptionTrait {
private $originalEncryptionModule;
+ /** @var IUserManager */
+ private $userManager;
+ /** @var SetupManager */
+ private $setupManager;
+
/**
- * @var \OCP\IConfig
+ * @var IConfig
*/
private $config;
/**
- * @var \OCA\Encryption\AppInfo\Application
+ * @var Application
*/
private $encryptionApp;
@@ -45,20 +57,22 @@ trait EncryptionTrait {
\OC_Util::tearDownFS();
\OC_User::setUserId('');
// needed for fully logout
- \OC::$server->getUserSession()->setUser(null);
+ Server::get(IUserSession::class)->setUser(null);
+
+ $this->setupManager->tearDown();
- Filesystem::tearDown();
\OC_User::setUserId($user);
$this->postLogin();
\OC_Util::setupFS($user);
- if (\OC::$server->getUserManager()->userExists($user)) {
+ if ($this->userManager->userExists($user)) {
\OC::$server->getUserFolder($user);
}
}
protected function setupForUser($name, $password) {
- \OC_Util::tearDownFS();
- \OC_Util::setupFS($name);
+ $this->setupManager->tearDown();
+ $this->setupManager->setupForUser($this->userManager->get($name));
+
$container = $this->encryptionApp->getContainer();
/** @var KeyManager $keyManager */
$keyManager = $container->query(KeyManager::class);
@@ -73,29 +87,32 @@ trait EncryptionTrait {
protected function postLogin() {
$encryptionWrapper = new EncryptionWrapper(
new ArrayCache(),
- \OC::$server->getEncryptionManager(),
- \OC::$server->getLogger()
+ Server::get(\OCP\Encryption\IManager::class),
+ Server::get(LoggerInterface::class)
);
$this->registerStorageWrapper('oc_encryption', [$encryptionWrapper, 'wrapStorage']);
}
protected function setUpEncryptionTrait() {
- $isReady = \OC::$server->getEncryptionManager()->isReady();
+ $isReady = Server::get(\OCP\Encryption\IManager::class)->isReady();
if (!$isReady) {
$this->markTestSkipped('Encryption not ready');
}
- \OC_App::loadApp('encryption');
+ $this->userManager = Server::get(IUserManager::class);
+ $this->setupManager = Server::get(SetupManager::class);
+
+ Server::get(IAppManager::class)->loadApp('encryption');
$this->encryptionApp = new Application([], $isReady);
- $this->config = \OC::$server->getConfig();
+ $this->config = Server::get(IConfig::class);
$this->encryptionWasEnabled = $this->config->getAppValue('core', 'encryption_enabled', 'no');
$this->originalEncryptionModule = $this->config->getAppValue('core', 'default_encryption_module');
- $this->config->setAppValue('core', 'default_encryption_module', \OCA\Encryption\Crypto\Encryption::ID);
+ $this->config->setAppValue('core', 'default_encryption_module', Encryption::ID);
$this->config->setAppValue('core', 'encryption_enabled', 'yes');
- $this->assertTrue(\OC::$server->getEncryptionManager()->isEnabled());
+ $this->assertTrue(Server::get(\OCP\Encryption\IManager::class)->isEnabled());
}
protected function tearDownEncryptionTrait() {