Remove OC_Config from app management template
* add unit test for this case
This commit is contained in:
parent
8d218bf3ef
commit
0a6db3ada6
|
@ -132,6 +132,7 @@ class AppSettingsController extends Controller {
|
|||
$params = [];
|
||||
$params['experimentalEnabled'] = $this->config->getSystemValue('appstore.experimental.enabled', false);
|
||||
$params['category'] = $category;
|
||||
$params['appstoreEnabled'] = $this->config->getSystemValue('appstoreenabled', true) === true;
|
||||
$this->navigationManager->setActiveEntry('core_apps');
|
||||
|
||||
$templateResponse = new TemplateResponse($this->appName, 'apps', $params, 'user');
|
||||
|
|
|
@ -29,7 +29,7 @@ script(
|
|||
</li>
|
||||
{{/each}}
|
||||
|
||||
<?php if(OC_Config::getValue('appstoreenabled', true) === true): ?>
|
||||
<?php if($_['appstoreEnabled']): ?>
|
||||
<li>
|
||||
<a class="app-external" target="_blank" href="https://owncloud.org/dev"><?php p($l->t('Developer documentation'));?> ↗</a>
|
||||
</li>
|
||||
|
|
|
@ -220,9 +220,14 @@ class AppSettingsControllerTest extends TestCase {
|
|||
|
||||
public function testViewApps() {
|
||||
$this->config
|
||||
->expects($this->once())
|
||||
->expects($this->at(0))
|
||||
->method('getSystemValue')
|
||||
->with('appstore.experimental.enabled', false);
|
||||
$this->config
|
||||
->expects($this->at(1))
|
||||
->method('getSystemValue')
|
||||
->with('appstoreenabled', true)
|
||||
->will($this->returnValue(true));
|
||||
$this->navigationManager
|
||||
->expects($this->once())
|
||||
->method('setActiveEntry')
|
||||
|
@ -231,7 +236,7 @@ class AppSettingsControllerTest extends TestCase {
|
|||
$policy = new ContentSecurityPolicy();
|
||||
$policy->addAllowedImageDomain('https://apps.owncloud.com');
|
||||
|
||||
$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 'enabled'], 'user');
|
||||
$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 'enabled', 'appstoreEnabled' => true], 'user');
|
||||
$expected->setContentSecurityPolicy($policy);
|
||||
|
||||
$this->assertEquals($expected, $this->appSettingsController->viewApps());
|
||||
|
@ -239,9 +244,14 @@ class AppSettingsControllerTest extends TestCase {
|
|||
|
||||
public function testViewAppsNotEnabled() {
|
||||
$this->config
|
||||
->expects($this->once())
|
||||
->expects($this->at(0))
|
||||
->method('getSystemValue')
|
||||
->with('appstore.experimental.enabled', false);
|
||||
$this->config
|
||||
->expects($this->at(1))
|
||||
->method('getSystemValue')
|
||||
->with('appstoreenabled', true)
|
||||
->will($this->returnValue(true));
|
||||
$this->navigationManager
|
||||
->expects($this->once())
|
||||
->method('setActiveEntry')
|
||||
|
@ -250,9 +260,33 @@ class AppSettingsControllerTest extends TestCase {
|
|||
$policy = new ContentSecurityPolicy();
|
||||
$policy->addAllowedImageDomain('https://apps.owncloud.com');
|
||||
|
||||
$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 'disabled'], 'user');
|
||||
$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 'disabled', 'appstoreEnabled' => true], 'user');
|
||||
$expected->setContentSecurityPolicy($policy);
|
||||
|
||||
$this->assertEquals($expected, $this->appSettingsController->viewApps('disabled'));
|
||||
}
|
||||
|
||||
public function testViewAppsAppstoreNotEnabled() {
|
||||
$this->config
|
||||
->expects($this->at(0))
|
||||
->method('getSystemValue')
|
||||
->with('appstore.experimental.enabled', false);
|
||||
$this->config
|
||||
->expects($this->at(1))
|
||||
->method('getSystemValue')
|
||||
->with('appstoreenabled', true)
|
||||
->will($this->returnValue(false));
|
||||
$this->navigationManager
|
||||
->expects($this->once())
|
||||
->method('setActiveEntry')
|
||||
->with('core_apps');
|
||||
|
||||
$policy = new ContentSecurityPolicy();
|
||||
$policy->addAllowedImageDomain('https://apps.owncloud.com');
|
||||
|
||||
$expected = new TemplateResponse('settings', 'apps', ['experimentalEnabled' => false, 'category' => 'enabled', 'appstoreEnabled' => false], 'user');
|
||||
$expected->setContentSecurityPolicy($policy);
|
||||
|
||||
$this->assertEquals($expected, $this->appSettingsController->viewApps());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue