From: Thomas Pulzer Date: Fri, 22 Jul 2016 12:47:50 +0000 (+0200) Subject: Renamed test classes for file logging tests. X-Git-Tag: v11.0RC2~956^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=refs%2Fpull%2F523%2Fhead;p=nextcloud-server.git Renamed test classes for file logging tests. --- diff --git a/tests/Core/Command/Log/FileTest.php b/tests/Core/Command/Log/FileTest.php new file mode 100644 index 00000000000..f55f92901d6 --- /dev/null +++ b/tests/Core/Command/Log/FileTest.php @@ -0,0 +1,121 @@ + + * + * @copyright Copyright (c) 2015, ownCloud, Inc. + * @license AGPL-3.0 + * + * This code is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License, version 3, + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License, version 3, + * along with this program. If not, see + * + */ + +namespace Tests\Core\Command\Log; + + +use OC\Core\Command\Log\File; +use Test\TestCase; + +class FileTest extends TestCase { + /** @var \PHPUnit_Framework_MockObject_MockObject */ + protected $config; + /** @var \PHPUnit_Framework_MockObject_MockObject */ + protected $consoleInput; + /** @var \PHPUnit_Framework_MockObject_MockObject */ + protected $consoleOutput; + + /** @var \Symfony\Component\Console\Command\Command */ + protected $command; + + protected function setUp() { + parent::setUp(); + + $config = $this->config = $this->getMockBuilder('OCP\IConfig') + ->disableOriginalConstructor() + ->getMock(); + $this->consoleInput = $this->getMock('Symfony\Component\Console\Input\InputInterface'); + $this->consoleOutput = $this->getMock('Symfony\Component\Console\Output\OutputInterface'); + + $this->command = new File($config); + } + + public function testEnable() { + $this->consoleInput->method('getOption') + ->will($this->returnValueMap([ + ['enable', 'true'] + ])); + $this->config->expects($this->once()) + ->method('setSystemValue') + ->with('log_type', 'file'); + + self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); + } + + public function testChangeFile() { + $this->consoleInput->method('getOption') + ->will($this->returnValueMap([ + ['file', '/foo/bar/file.log'] + ])); + $this->config->expects($this->once()) + ->method('setSystemValue') + ->with('logfile', '/foo/bar/file.log'); + + self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); + } + + public function changeRotateSizeProvider() { + return [ + ['42', 42], + ['0', 0], + ['1 kB', 1024], + ['5MB', 5 * 1024 * 1024], + ]; + } + + /** + * @dataProvider changeRotateSizeProvider + */ + public function testChangeRotateSize($optionValue, $configValue) { + $this->consoleInput->method('getOption') + ->will($this->returnValueMap([ + ['rotate-size', $optionValue] + ])); + $this->config->expects($this->once()) + ->method('setSystemValue') + ->with('log_rotate_size', $configValue); + + self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); + } + + public function testGetConfiguration() { + $this->config->method('getSystemValue') + ->will($this->returnValueMap([ + ['log_type', 'file', 'log_type_value'], + ['datadirectory', \OC::$SERVERROOT.'/data', '/data/directory/'], + ['logfile', '/data/directory/nextcloud.log', '/var/log/nextcloud.log'], + ['log_rotate_size', 0, 5 * 1024 * 1024], + ])); + + $this->consoleOutput->expects($this->at(0)) + ->method('writeln') + ->with('Log backend file: disabled'); + $this->consoleOutput->expects($this->at(1)) + ->method('writeln') + ->with('Log file: /var/log/nextcloud.log'); + $this->consoleOutput->expects($this->at(2)) + ->method('writeln') + ->with('Rotate at: 5 MB'); + + self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); + } + +} diff --git a/tests/Core/Command/Log/OwnCloudTest.php b/tests/Core/Command/Log/OwnCloudTest.php deleted file mode 100644 index 8f217cce653..00000000000 --- a/tests/Core/Command/Log/OwnCloudTest.php +++ /dev/null @@ -1,121 +0,0 @@ - - * - * @copyright Copyright (c) 2015, ownCloud, Inc. - * @license AGPL-3.0 - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * - */ - -namespace Tests\Core\Command\Log; - - -use OC\Core\Command\Log\File; -use Test\TestCase; - -class OwnCloudTest extends TestCase { - /** @var \PHPUnit_Framework_MockObject_MockObject */ - protected $config; - /** @var \PHPUnit_Framework_MockObject_MockObject */ - protected $consoleInput; - /** @var \PHPUnit_Framework_MockObject_MockObject */ - protected $consoleOutput; - - /** @var \Symfony\Component\Console\Command\Command */ - protected $command; - - protected function setUp() { - parent::setUp(); - - $config = $this->config = $this->getMockBuilder('OCP\IConfig') - ->disableOriginalConstructor() - ->getMock(); - $this->consoleInput = $this->getMock('Symfony\Component\Console\Input\InputInterface'); - $this->consoleOutput = $this->getMock('Symfony\Component\Console\Output\OutputInterface'); - - $this->command = new File($config); - } - - public function testEnable() { - $this->consoleInput->method('getOption') - ->will($this->returnValueMap([ - ['enable', 'true'] - ])); - $this->config->expects($this->once()) - ->method('setSystemValue') - ->with('log_type', 'file'); - - self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); - } - - public function testChangeFile() { - $this->consoleInput->method('getOption') - ->will($this->returnValueMap([ - ['file', '/foo/bar/file.log'] - ])); - $this->config->expects($this->once()) - ->method('setSystemValue') - ->with('logfile', '/foo/bar/file.log'); - - self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); - } - - public function changeRotateSizeProvider() { - return [ - ['42', 42], - ['0', 0], - ['1 kB', 1024], - ['5MB', 5 * 1024 * 1024], - ]; - } - - /** - * @dataProvider changeRotateSizeProvider - */ - public function testChangeRotateSize($optionValue, $configValue) { - $this->consoleInput->method('getOption') - ->will($this->returnValueMap([ - ['rotate-size', $optionValue] - ])); - $this->config->expects($this->once()) - ->method('setSystemValue') - ->with('log_rotate_size', $configValue); - - self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); - } - - public function testGetConfiguration() { - $this->config->method('getSystemValue') - ->will($this->returnValueMap([ - ['log_type', 'file', 'log_type_value'], - ['datadirectory', \OC::$SERVERROOT.'/data', '/data/directory/'], - ['logfile', '/data/directory/nextcloud.log', '/var/log/nextcloud.log'], - ['log_rotate_size', 0, 5 * 1024 * 1024], - ])); - - $this->consoleOutput->expects($this->at(0)) - ->method('writeln') - ->with('Log backend file: disabled'); - $this->consoleOutput->expects($this->at(1)) - ->method('writeln') - ->with('Log file: /var/log/nextcloud.log'); - $this->consoleOutput->expects($this->at(2)) - ->method('writeln') - ->with('Rotate at: 5 MB'); - - self::invokePrivate($this->command, 'execute', [$this->consoleInput, $this->consoleOutput]); - } - -} diff --git a/tests/lib/Log/FileTest.php b/tests/lib/Log/FileTest.php new file mode 100644 index 00000000000..4bd5b6f21ab --- /dev/null +++ b/tests/lib/Log/FileTest.php @@ -0,0 +1,80 @@ +. + */ + +namespace Test\Log; + +use OC\Log\File; +use Test\TestCase; + +/** + * Class FileTest + * + * @group DB + */ +class FileTest extends TestCase +{ + private $restore_logfile; + private $restore_logdateformat; + + protected function setUp() { + parent::setUp(); + $config = \OC::$server->getConfig(); + $this->restore_logfile = $config->getSystemValue("logfile"); + $this->restore_logdateformat = $config->getSystemValue('logdateformat'); + + $config->setSystemValue("logfile", $config->getSystemValue('datadirectory') . "/logtest"); + File::init(); + } + protected function tearDown() { + $config = \OC::$server->getConfig(); + if (isset($this->restore_logfile)) { + $config->getSystemValue("logfile", $this->restore_logfile); + } else { + $config->deleteSystemValue("logfile"); + } + if (isset($this->restore_logdateformat)) { + $config->getSystemValue("logdateformat", $this->restore_logdateformat); + } else { + $config->deleteSystemValue("restore_logdateformat"); + } + File::init(); + parent::tearDown(); + } + + public function testMicrosecondsLogTimestamp() { + $config = \OC::$server->getConfig(); + # delete old logfile + unlink($config->getSystemValue('logfile')); + + # set format & write log line + $config->setSystemValue('logdateformat', 'u'); + File::write('test', 'message', \OCP\Util::ERROR); + + # read log line + $handle = @fopen($config->getSystemValue('logfile'), 'r'); + $line = fread($handle, 1000); + fclose($handle); + + # check timestamp has microseconds part + $values = (array) json_decode($line); + $microseconds = $values['time']; + $this->assertNotEquals(0, $microseconds); + + } + + +} diff --git a/tests/lib/Log/OwncloudTest.php b/tests/lib/Log/OwncloudTest.php deleted file mode 100644 index 3835048fe54..00000000000 --- a/tests/lib/Log/OwncloudTest.php +++ /dev/null @@ -1,80 +0,0 @@ -. - */ - -namespace Test\Log; - -use OC\Log\File; -use Test\TestCase; - -/** - * Class OwncloudTest - * - * @group DB - */ -class OwncloudTest extends TestCase -{ - private $restore_logfile; - private $restore_logdateformat; - - protected function setUp() { - parent::setUp(); - $config = \OC::$server->getConfig(); - $this->restore_logfile = $config->getSystemValue("logfile"); - $this->restore_logdateformat = $config->getSystemValue('logdateformat'); - - $config->setSystemValue("logfile", $config->getSystemValue('datadirectory') . "/logtest"); - File::init(); - } - protected function tearDown() { - $config = \OC::$server->getConfig(); - if (isset($this->restore_logfile)) { - $config->getSystemValue("logfile", $this->restore_logfile); - } else { - $config->deleteSystemValue("logfile"); - } - if (isset($this->restore_logdateformat)) { - $config->getSystemValue("logdateformat", $this->restore_logdateformat); - } else { - $config->deleteSystemValue("restore_logdateformat"); - } - File::init(); - parent::tearDown(); - } - - public function testMicrosecondsLogTimestamp() { - $config = \OC::$server->getConfig(); - # delete old logfile - unlink($config->getSystemValue('logfile')); - - # set format & write log line - $config->setSystemValue('logdateformat', 'u'); - File::write('test', 'message', \OCP\Util::ERROR); - - # read log line - $handle = @fopen($config->getSystemValue('logfile'), 'r'); - $line = fread($handle, 1000); - fclose($handle); - - # check timestamp has microseconds part - $values = (array) json_decode($line); - $microseconds = $values['time']; - $this->assertNotEquals(0, $microseconds); - - } - - -}