summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2015-01-09 00:33:22 +0100
committerMorris Jobke <hey@morrisjobke.de>2015-01-09 00:33:22 +0100
commit6a5f12beca175a0b9a951fa844eacfd21a8df3de (patch)
tree8e1b1b00109daaa1c7dd1f24f3f585d94c7a5b52 /tests
parent5311d92c5c9dc0de297e36e4009b1e99f386e6bd (diff)
parentf579f2bd948ca73a1af720e19517af9bdde11748 (diff)
downloadnextcloud-server-6a5f12beca175a0b9a951fa844eacfd21a8df3de.tar.gz
nextcloud-server-6a5f12beca175a0b9a951fa844eacfd21a8df3de.zip
Merge pull request #12988 from owncloud/logfile_download
Logfile download
Diffstat (limited to 'tests')
-rw-r--r--tests/settings/controller/logsettingscontrollertest.php79
1 files changed, 79 insertions, 0 deletions
diff --git a/tests/settings/controller/logsettingscontrollertest.php b/tests/settings/controller/logsettingscontrollertest.php
new file mode 100644
index 00000000000..e80acfa75b5
--- /dev/null
+++ b/tests/settings/controller/logsettingscontrollertest.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * @author Georg Ehrke
+ * @copyright 2014 Georg Ehrke <georg@ownCloud.com>
+ *
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+namespace Test\Settings\Controller;
+
+use \OC\Settings\Application;
+
+/**
+ * @package OC\Settings\Controller
+ */
+class LogSettingsControllerTest extends \Test\TestCase {
+
+ /** @var \OCP\AppFramework\IAppContainer */
+ private $container;
+
+ /** @var LogSettingsController */
+ private $logSettingsController;
+
+ protected function setUp() {
+ $app = new Application();
+ $this->container = $app->getContainer();
+ $this->container['Config'] = $this->getMockBuilder('\OCP\IConfig')
+ ->disableOriginalConstructor()->getMock();
+ $this->container['AppName'] = 'settings';
+ $this->logSettingsController = $this->container['LogSettingsController'];
+ }
+
+ /**
+ * @dataProvider logLevelData
+ */
+ public function testSetLogLevel($level, $inRange) {
+ if ($inRange) {
+ $this->container['Config']
+ ->expects($this->once())
+ ->method('setSystemValue')
+ ->with('loglevel', $level);
+ }
+
+ $response = $this->logSettingsController->setLogLevel($level)->getData();
+
+ if ($inRange) {
+ $expectedResponse = ['level' => $level];
+ } else {
+ $expectedResponse = ['message' => 'log-level out of allowed range'];
+ }
+
+ $this->assertSame($expectedResponse, $response);
+ }
+
+ public function logLevelData() {
+ return [
+ [-1, false],
+ [0, true],
+ [1, true],
+ [2, true],
+ [3, true],
+ [4, true],
+ [5, false],
+ ];
+ }
+
+ public function testGetFilenameForDownload() {
+ $timestamp = 42;
+ $this->container['Config']
+ ->expects($this->once())
+ ->method('getSystemValue')
+ ->with('instanceid')
+ ->will($this->returnValue('0xF'));
+ $filename = \Test_Helper::invokePrivate($this->logSettingsController, 'getFilenameForDownload', [$timestamp]);
+
+ $this->assertSame('ownCloud-0xF-42.log', $filename);
+ }
+}