diff options
author | Morris Jobke <hey@morrisjobke.de> | 2015-01-09 00:33:22 +0100 |
---|---|---|
committer | Morris Jobke <hey@morrisjobke.de> | 2015-01-09 00:33:22 +0100 |
commit | 6a5f12beca175a0b9a951fa844eacfd21a8df3de (patch) | |
tree | 8e1b1b00109daaa1c7dd1f24f3f585d94c7a5b52 /tests | |
parent | 5311d92c5c9dc0de297e36e4009b1e99f386e6bd (diff) | |
parent | f579f2bd948ca73a1af720e19517af9bdde11748 (diff) | |
download | nextcloud-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.php | 79 |
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); + } +} |