diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2015-11-26 16:50:05 +0100 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2015-11-26 16:50:05 +0100 |
commit | 8fe878afe9af165b98470a75203df2f1b32cb68f (patch) | |
tree | 770f6f2077c1502a686158e2c0dbb4baeb93b230 | |
parent | 80c43ffc6cbae26695435ea7b4d2e8126dee6725 (diff) | |
parent | bc69cb2de39bb14079ffa58ad5fe42856c50d790 (diff) | |
download | nextcloud-server-8fe878afe9af165b98470a75203df2f1b32cb68f.tar.gz nextcloud-server-8fe878afe9af165b98470a75203df2f1b32cb68f.zip |
Merge pull request #20602 from owncloud/fix-installed-apps
Always installed apps includes the hardcoded ones from shipped.json
-rw-r--r-- | lib/private/app/appmanager.php | 6 | ||||
-rw-r--r-- | tests/lib/app.php | 9 | ||||
-rw-r--r-- | tests/lib/app/manager.php | 8 |
3 files changed, 19 insertions, 4 deletions
diff --git a/lib/private/app/appmanager.php b/lib/private/app/appmanager.php index 1f993d8538f..f826c8ba0c7 100644 --- a/lib/private/app/appmanager.php +++ b/lib/private/app/appmanager.php @@ -77,6 +77,12 @@ class AppManager implements IAppManager { private function getInstalledAppsValues() { if (!$this->installedAppsCache) { $values = $this->appConfig->getValues(false, 'enabled'); + + $alwaysEnabledApps = $this->getAlwaysEnabledApps(); + foreach($alwaysEnabledApps as $appId) { + $values[$appId] = 'yes'; + } + $this->installedAppsCache = array_filter($values, function ($value) { return $value !== 'no'; }); diff --git a/tests/lib/app.php b/tests/lib/app.php index 485091cee4c..bb972e7cf9a 100644 --- a/tests/lib/app.php +++ b/tests/lib/app.php @@ -306,6 +306,7 @@ class Test_App extends \Test\TestCase { 'app3', 'appforgroup1', 'appforgroup12', + 'dav', ), false ), @@ -318,6 +319,7 @@ class Test_App extends \Test\TestCase { 'app3', 'appforgroup12', 'appforgroup2', + 'dav', ), false ), @@ -331,6 +333,7 @@ class Test_App extends \Test\TestCase { 'appforgroup1', 'appforgroup12', 'appforgroup2', + 'dav', ), false ), @@ -344,6 +347,7 @@ class Test_App extends \Test\TestCase { 'appforgroup1', 'appforgroup12', 'appforgroup2', + 'dav', ), false, ), @@ -357,6 +361,7 @@ class Test_App extends \Test\TestCase { 'appforgroup1', 'appforgroup12', 'appforgroup2', + 'dav', ), true, ), @@ -434,11 +439,11 @@ class Test_App extends \Test\TestCase { ); $apps = \OC_App::getEnabledApps(true); - $this->assertEquals(array('files', 'app3'), $apps); + $this->assertEquals(array('files', 'app3', 'dav'), $apps); // mock should not be called again here $apps = \OC_App::getEnabledApps(false); - $this->assertEquals(array('files', 'app3'), $apps); + $this->assertEquals(array('files', 'app3', 'dav'), $apps); $this->restoreAppConfig(); \OC_User::setUserId(null); diff --git a/tests/lib/app/manager.php b/tests/lib/app/manager.php index 7333d7601b1..38358fd61cf 100644 --- a/tests/lib/app/manager.php +++ b/tests/lib/app/manager.php @@ -188,7 +188,7 @@ class Manager extends \PHPUnit_Framework_TestCase { $this->appConfig->setValue('test1', 'enabled', 'yes'); $this->appConfig->setValue('test2', 'enabled', 'no'); $this->appConfig->setValue('test3', 'enabled', '["foo"]'); - $this->assertEquals(['test1', 'test3'], $this->manager->getInstalledApps()); + $this->assertEquals(['dav', 'files', 'test1', 'test3'], $this->manager->getInstalledApps()); } public function testGetAppsForUser() { @@ -202,7 +202,7 @@ class Manager extends \PHPUnit_Framework_TestCase { $this->appConfig->setValue('test2', 'enabled', 'no'); $this->appConfig->setValue('test3', 'enabled', '["foo"]'); $this->appConfig->setValue('test4', 'enabled', '["asd"]'); - $this->assertEquals(['test1', 'test3'], $this->manager->getEnabledAppsForUser($user)); + $this->assertEquals(['dav', 'files', 'test1', 'test3'], $this->manager->getEnabledAppsForUser($user)); } public function testGetAppsNeedingUpgrade() { @@ -212,6 +212,8 @@ class Manager extends \PHPUnit_Framework_TestCase { ->getMock(); $appInfos = [ + 'dav' => ['id' => 'dav'], + 'files' => ['id' => 'files'], 'test1' => ['id' => 'test1', 'version' => '1.0.1', 'requiremax' => '9.0.0'], 'test2' => ['id' => 'test2', 'version' => '1.0.0', 'requiremin' => '8.2.0'], 'test3' => ['id' => 'test3', 'version' => '1.2.4', 'requiremin' => '9.0.0'], @@ -250,6 +252,8 @@ class Manager extends \PHPUnit_Framework_TestCase { ->getMock(); $appInfos = [ + 'dav' => ['id' => 'dav'], + 'files' => ['id' => 'files'], 'test1' => ['id' => 'test1', 'version' => '1.0.1', 'requiremax' => '8.0.0'], 'test2' => ['id' => 'test2', 'version' => '1.0.0', 'requiremin' => '8.2.0'], 'test3' => ['id' => 'test3', 'version' => '1.2.4', 'requiremin' => '9.0.0'], |