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 = [];
|
||||||
$params['experimentalEnabled'] = $this->config->getSystemValue('appstore.experimental.enabled', false);
|
$params['experimentalEnabled'] = $this->config->getSystemValue('appstore.experimental.enabled', false);
|
||||||
$params['category'] = $category;
|
$params['category'] = $category;
|
||||||
|
$params['appstoreEnabled'] = $this->config->getSystemValue('appstoreenabled', true) === true;
|
||||||
$this->navigationManager->setActiveEntry('core_apps');
|
$this->navigationManager->setActiveEntry('core_apps');
|
||||||
|
|
||||||
$templateResponse = new TemplateResponse($this->appName, 'apps', $params, 'user');
|
$templateResponse = new TemplateResponse($this->appName, 'apps', $params, 'user');
|
||||||
|
|
|
@ -29,7 +29,7 @@ script(
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
||||||
<?php if(OC_Config::getValue('appstoreenabled', true) === true): ?>
|
<?php if($_['appstoreEnabled']): ?>
|
||||||
<li>
|
<li>
|
||||||
<a class="app-external" target="_blank" href="https://owncloud.org/dev"><?php p($l->t('Developer documentation'));?> ↗</a>
|
<a class="app-external" target="_blank" href="https://owncloud.org/dev"><?php p($l->t('Developer documentation'));?> ↗</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -220,9 +220,14 @@ class AppSettingsControllerTest extends TestCase {
|
||||||
|
|
||||||
public function testViewApps() {
|
public function testViewApps() {
|
||||||
$this->config
|
$this->config
|
||||||
->expects($this->once())
|
->expects($this->at(0))
|
||||||
->method('getSystemValue')
|
->method('getSystemValue')
|
||||||
->with('appstore.experimental.enabled', false);
|
->with('appstore.experimental.enabled', false);
|
||||||
|
$this->config
|
||||||
|
->expects($this->at(1))
|
||||||
|
->method('getSystemValue')
|
||||||
|
->with('appstoreenabled', true)
|
||||||
|
->will($this->returnValue(true));
|
||||||
$this->navigationManager
|
$this->navigationManager
|
||||||
->expects($this->once())
|
->expects($this->once())
|
||||||
->method('setActiveEntry')
|
->method('setActiveEntry')
|
||||||
|
@ -231,7 +236,7 @@ class AppSettingsControllerTest extends TestCase {
|
||||||
$policy = new ContentSecurityPolicy();
|
$policy = new ContentSecurityPolicy();
|
||||||
$policy->addAllowedImageDomain('https://apps.owncloud.com');
|
$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);
|
$expected->setContentSecurityPolicy($policy);
|
||||||
|
|
||||||
$this->assertEquals($expected, $this->appSettingsController->viewApps());
|
$this->assertEquals($expected, $this->appSettingsController->viewApps());
|
||||||
|
@ -239,9 +244,14 @@ class AppSettingsControllerTest extends TestCase {
|
||||||
|
|
||||||
public function testViewAppsNotEnabled() {
|
public function testViewAppsNotEnabled() {
|
||||||
$this->config
|
$this->config
|
||||||
->expects($this->once())
|
->expects($this->at(0))
|
||||||
->method('getSystemValue')
|
->method('getSystemValue')
|
||||||
->with('appstore.experimental.enabled', false);
|
->with('appstore.experimental.enabled', false);
|
||||||
|
$this->config
|
||||||
|
->expects($this->at(1))
|
||||||
|
->method('getSystemValue')
|
||||||
|
->with('appstoreenabled', true)
|
||||||
|
->will($this->returnValue(true));
|
||||||
$this->navigationManager
|
$this->navigationManager
|
||||||
->expects($this->once())
|
->expects($this->once())
|
||||||
->method('setActiveEntry')
|
->method('setActiveEntry')
|
||||||
|
@ -250,9 +260,33 @@ class AppSettingsControllerTest extends TestCase {
|
||||||
$policy = new ContentSecurityPolicy();
|
$policy = new ContentSecurityPolicy();
|
||||||
$policy->addAllowedImageDomain('https://apps.owncloud.com');
|
$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);
|
$expected->setContentSecurityPolicy($policy);
|
||||||
|
|
||||||
$this->assertEquals($expected, $this->appSettingsController->viewApps('disabled'));
|
$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