fix(profile): make sure the app cannot be disabled as it was in core

Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
This commit is contained in:
skjnldsv 2024-11-13 10:45:01 +01:00
parent b15fdfd40e
commit 158299b3d7
5 changed files with 20 additions and 8 deletions

View file

@ -1,7 +1,7 @@
<?xml version="1.0"?>
<!--
- SPDX-FileCopyrightText: 2018-2024 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-only
- SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
<info xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="https://apps.nextcloud.com/schema/apps/info.xsd">
@ -11,7 +11,7 @@
<description>Provides a customisable user profile interface.</description>
<version>1.0.0</version>
<licence>agpl</licence>
<author>Chris Ng</author>
<author>Nextcloud GmbH</author>
<namespace>Profile</namespace>
<category>social</category>
<bugs>https://github.com/nextcloud/server/issues</bugs>

View file

@ -599,6 +599,7 @@ Feature: provisioning
| files_trashbin |
| files_versions |
| lookup_server_connector |
| profile |
| provisioning_api |
| settings |
| sharebymail |

View file

@ -34,8 +34,8 @@
"provisioning_api",
"recommendations",
"related_resources",
"settings",
"serverinfo",
"settings",
"sharebymail",
"support",
"survey_client",
@ -99,13 +99,14 @@
"webhook_listeners"
],
"alwaysEnabled": [
"files",
"cloud_federation_api",
"dav",
"federatedfilesharing",
"files",
"lookup_server_connector",
"provisioning_api",
"oauth2",
"profile",
"provisioning_api",
"settings",
"theming",
"twofactor_backupcodes",

View file

@ -542,6 +542,7 @@ class AppManagerTest extends TestCase {
'files',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'test1',
@ -572,6 +573,7 @@ class AppManagerTest extends TestCase {
'files',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'test1',
@ -603,6 +605,7 @@ class AppManagerTest extends TestCase {
'dav' => ['id' => 'dav'],
'files' => ['id' => 'files'],
'federatedfilesharing' => ['id' => 'federatedfilesharing'],
'profile' => ['id' => 'profile'],
'provisioning_api' => ['id' => 'provisioning_api'],
'lookup_server_connector' => ['id' => 'lookup_server_connector'],
'test1' => ['id' => 'test1', 'version' => '1.0.1', 'requiremax' => '9.0.0'],
@ -661,6 +664,7 @@ class AppManagerTest extends TestCase {
'dav' => ['id' => 'dav'],
'files' => ['id' => 'files'],
'federatedfilesharing' => ['id' => 'federatedfilesharing'],
'profile' => ['id' => 'profile'],
'provisioning_api' => ['id' => 'provisioning_api'],
'lookup_server_connector' => ['id' => 'lookup_server_connector'],
'test1' => ['id' => 'test1', 'version' => '1.0.1', 'requiremax' => '8.0.0'],
@ -711,6 +715,7 @@ class AppManagerTest extends TestCase {
'files',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'test1',

View file

@ -345,6 +345,7 @@ class AppTest extends \Test\TestCase {
'federatedfilesharing',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'theming',
@ -368,6 +369,7 @@ class AppTest extends \Test\TestCase {
'federatedfilesharing',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'theming',
@ -392,6 +394,7 @@ class AppTest extends \Test\TestCase {
'federatedfilesharing',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'theming',
@ -416,6 +419,7 @@ class AppTest extends \Test\TestCase {
'federatedfilesharing',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'theming',
@ -440,6 +444,7 @@ class AppTest extends \Test\TestCase {
'federatedfilesharing',
'lookup_server_connector',
'oauth2',
'profile',
'provisioning_api',
'settings',
'theming',
@ -523,11 +528,11 @@ class AppTest extends \Test\TestCase {
);
$apps = \OC_App::getEnabledApps();
$this->assertEquals(['files', 'app3', 'cloud_federation_api', 'dav', 'federatedfilesharing', 'lookup_server_connector', 'oauth2', 'provisioning_api', 'settings', 'theming', 'twofactor_backupcodes', 'viewer', 'workflowengine'], $apps);
$this->assertEquals(['files', 'app3', 'cloud_federation_api', 'dav', 'federatedfilesharing', 'lookup_server_connector', 'oauth2', 'profile', 'provisioning_api', 'settings', 'theming', 'twofactor_backupcodes', 'viewer', 'workflowengine'], $apps);
// mock should not be called again here
$apps = \OC_App::getEnabledApps();
$this->assertEquals(['files', 'app3', 'cloud_federation_api', 'dav', 'federatedfilesharing', 'lookup_server_connector', 'oauth2', 'provisioning_api', 'settings', 'theming', 'twofactor_backupcodes', 'viewer', 'workflowengine'], $apps);
$this->assertEquals(['files', 'app3', 'cloud_federation_api', 'dav', 'federatedfilesharing', 'lookup_server_connector', 'oauth2', 'profile', 'provisioning_api', 'settings', 'theming', 'twofactor_backupcodes', 'viewer', 'workflowengine'], $apps);
$this->restoreAppConfig();
\OC_User::setUserId(null);