Cleanup and fix tests

Signed-off-by: Julius Härtl <jus@bitgrid.net>
This commit is contained in:
Julius Härtl 2018-04-17 20:03:26 +02:00
parent 1f2f701931
commit 9bfc108b79
No known key found for this signature in database
GPG Key ID: 4C614C6ED2CDE6DF
4 changed files with 19 additions and 77 deletions

View File

@ -127,13 +127,8 @@ class Overview implements ISettings {
'OutdatedCacheWarning' => $outdatedCaches, 'OutdatedCacheWarning' => $outdatedCaches,
'fileLockingType' => $fileLockingType, 'fileLockingType' => $fileLockingType,
'suggestedOverwriteCliUrl' => $suggestedOverwriteCliUrl, 'suggestedOverwriteCliUrl' => $suggestedOverwriteCliUrl,
// Background jobs
'backgroundjobs_mode' => $this->config->getAppValue('core', 'backgroundjobs_mode', 'ajax'),
'lastcron' => $this->config->getAppValue('core', 'lastcron', false), 'lastcron' => $this->config->getAppValue('core', 'lastcron', false),
'cronErrors' => $this->config->getAppValue('core', 'cronErrors'), 'cronErrors' => $this->config->getAppValue('core', 'cronErrors'),
'cli_based_cron_possible' => function_exists('posix_getpwuid'),
'cli_based_cron_user' => function_exists('posix_getpwuid') ? posix_getpwuid(fileowner(\OC::$configDir . 'config.php'))['name'] : '',
]; ];
return new TemplateResponse('settings', 'settings/admin/overview', $parameters, ''); return new TemplateResponse('settings', 'settings/admin/overview', $parameters, '');

View File

@ -74,63 +74,7 @@ class Server implements ISettings {
* @return TemplateResponse * @return TemplateResponse
*/ */
public function getForm() { public function getForm() {
try {
if ($this->db->getDatabasePlatform() instanceof SqlitePlatform) {
$invalidTransactionIsolationLevel = false;
} else {
$invalidTransactionIsolationLevel = $this->db->getTransactionIsolation() !== Connection::TRANSACTION_READ_COMMITTED;
}
} catch (DBALException $e) {
// ignore
$invalidTransactionIsolationLevel = false;
}
$envPath = getenv('PATH');
// warn if outdated version of a memcache module is used
$caches = [
'apcu' => ['name' => $this->l->t('APCu'), 'version' => '4.0.6'],
'redis' => ['name' => $this->l->t('Redis'), 'version' => '2.2.5'],
];
$outdatedCaches = [];
foreach ($caches as $php_module => $data) {
$isOutdated = extension_loaded($php_module) && version_compare(phpversion($php_module), $data['version'], '<');
if ($isOutdated) {
$outdatedCaches[$php_module] = $data;
}
}
if ($this->lockingProvider instanceof NoopLockingProvider) {
$fileLockingType = 'none';
} else if ($this->lockingProvider instanceof DBLockingProvider) {
$fileLockingType = 'db';
} else {
$fileLockingType = 'cache';
}
$suggestedOverwriteCliUrl = '';
if ($this->config->getSystemValue('overwrite.cli.url', '') === '') {
$suggestedOverwriteCliUrl = $this->request->getServerProtocol() . '://' . $this->request->getInsecureServerHost() . \OC::$WEBROOT;
if (!$this->config->getSystemValue('config_is_read_only', false)) {
// Set the overwrite URL when it was not set yet.
$this->config->setSystemValue('overwrite.cli.url', $suggestedOverwriteCliUrl);
$suggestedOverwriteCliUrl = '';
}
}
$parameters = [ $parameters = [
// Diagnosis
'readOnlyConfigEnabled' => \OC_Helper::isReadOnlyConfigEnabled(),
'isLocaleWorking' => \OC_Util::isSetLocaleWorking(),
'isAnnotationsWorking' => \OC_Util::isAnnotationsWorking(),
'checkForWorkingWellKnownSetup' => $this->config->getSystemValue('check_for_working_wellknown_setup', true),
'has_fileinfo' => \OC_Util::fileInfoLoaded(),
'invalidTransactionIsolationLevel' => $invalidTransactionIsolationLevel,
'getenvServerNotWorking' => empty($envPath),
'OutdatedCacheWarning' => $outdatedCaches,
'fileLockingType' => $fileLockingType,
'suggestedOverwriteCliUrl' => $suggestedOverwriteCliUrl,
// Background jobs // Background jobs
'backgroundjobs_mode' => $this->config->getAppValue('core', 'backgroundjobs_mode', 'ajax'), 'backgroundjobs_mode' => $this->config->getAppValue('core', 'backgroundjobs_mode', 'ajax'),
'lastcron' => $this->config->getAppValue('core', 'lastcron', false), 'lastcron' => $this->config->getAppValue('core', 'lastcron', false),

View File

@ -24,11 +24,12 @@
namespace Test\Settings\Admin; namespace Test\Settings\Admin;
use OC\Settings\Admin\Additional; use OC\Settings\Admin\Additional;
use OC\Settings\Admin\Mail;
use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Http\TemplateResponse;
use OCP\IConfig; use OCP\IConfig;
use Test\TestCase; use Test\TestCase;
class AdditionalTest extends TestCase { class MailTest extends TestCase {
/** @var Additional */ /** @var Additional */
private $admin; private $admin;
/** @var IConfig */ /** @var IConfig */
@ -38,7 +39,7 @@ class AdditionalTest extends TestCase {
parent::setUp(); parent::setUp();
$this->config = $this->getMockBuilder(IConfig::class)->getMock(); $this->config = $this->getMockBuilder(IConfig::class)->getMock();
$this->admin = new Additional( $this->admin = new Mail(
$this->config $this->config
); );
} }

View File

@ -115,24 +115,25 @@ class ManagerTest extends TestCase {
$this->manager->registerSection('admin', \OCA\WorkflowEngine\Settings\Section::class); $this->manager->registerSection('admin', \OCA\WorkflowEngine\Settings\Section::class);
$this->url->expects($this->exactly(6)) $this->url->expects($this->exactly(7))
->method('imagePath') ->method('imagePath')
->willReturnMap([ ->willReturnMap([
['settings', 'admin.svg', '1'], ['settings', 'admin.svg', '0'],
['core', 'actions/settings-dark.svg', '1'],
['core', 'actions/share.svg', '2'], ['core', 'actions/share.svg', '2'],
['core', 'actions/password.svg', '3'], ['core', 'actions/password.svg', '3'],
['core', 'actions/settings-dark.svg', '4'], ['settings', 'help.svg', '4'],
['settings', 'help.svg', '5'],
]); ]);
$this->assertEquals([ $this->assertEquals([
0 => [new Section('server', 'Basic settings', 0, '1')], 0 => [new Section('overview', 'Overview', 0, '0')],
1 => [new Section('server', 'Basic settings', 0, '1')],
5 => [new Section('sharing', 'Sharing', 0, '2')], 5 => [new Section('sharing', 'Sharing', 0, '2')],
10 => [new Section('security', 'Security', 0, '3')], 10 => [new Section('security', 'Security', 0, '3')],
45 => [new Section('encryption', 'Encryption', 0, '3')], 45 => [new Section('encryption', 'Encryption', 0, '3')],
55 => [\OC::$server->query(\OCA\WorkflowEngine\Settings\Section::class)], 55 => [\OC::$server->query(\OCA\WorkflowEngine\Settings\Section::class)],
98 => [new Section('additional', 'Additional settings', 0, '4')], 98 => [new Section('additional', 'Additional settings', 0, '1')],
99 => [new Section('tips-tricks', 'Tips & tricks', 0, '5')], 99 => [new Section('tips-tricks', 'Tips & tricks', 0, '4')],
], $this->manager->getAdminSections()); ], $this->manager->getAdminSections());
} }
@ -166,23 +167,24 @@ class ManagerTest extends TestCase {
->method('t') ->method('t')
->will($this->returnArgument(0)); ->will($this->returnArgument(0));
$this->url->expects($this->exactly(6)) $this->url->expects($this->exactly(7))
->method('imagePath') ->method('imagePath')
->willReturnMap([ ->willReturnMap([
['settings', 'admin.svg', '1'], ['settings', 'admin.svg', '0'],
['core', 'actions/settings-dark.svg', '1'],
['core', 'actions/share.svg', '2'], ['core', 'actions/share.svg', '2'],
['core', 'actions/password.svg', '3'], ['core', 'actions/password.svg', '3'],
['core', 'actions/settings-dark.svg', '4'], ['settings', 'help.svg', '4'],
['settings', 'help.svg', '5'],
]); ]);
$this->assertEquals([ $this->assertEquals([
0 => [new Section('server', 'Basic settings', 0, '1')], 0 => [new Section('overview', 'Overview', 0, '0')],
1 => [new Section('server', 'Basic settings', 0, '1')],
5 => [new Section('sharing', 'Sharing', 0, '2')], 5 => [new Section('sharing', 'Sharing', 0, '2')],
10 => [new Section('security', 'Security', 0, '3')], 10 => [new Section('security', 'Security', 0, '3')],
45 => [new Section('encryption', 'Encryption', 0, '3')], 45 => [new Section('encryption', 'Encryption', 0, '3')],
98 => [new Section('additional', 'Additional settings', 0, '4')], 98 => [new Section('additional', 'Additional settings', 0, '1')],
99 => [new Section('tips-tricks', 'Tips & tricks', 0, '5')], 99 => [new Section('tips-tricks', 'Tips & tricks', 0, '4')],
], $this->manager->getAdminSections()); ], $this->manager->getAdminSections());
} }