You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4php-dev@logging.apache.org by ih...@apache.org on 2011/07/15 11:54:31 UTC
svn commit: r1147068 - in /logging/log4php/trunk/src: changes/changes.xml
main/php/LoggerAppender.php
test/php/configurators/LoggerConfiguratorPhpTest.php
Author: ihabunek
Date: Fri Jul 15 09:54:30 2011
New Revision: 1147068
URL: http://svn.apache.org/viewvc?rev=1147068&view=rev
Log:
LOG4PHP-143: LoggerConfiguratorPhp does not accept integer constants for appender threshold
* Fixed LoggerAppender::setThreshold() to accept integers (currently accepts only strings and LoggerLevel objects)
* Added tests
Modified:
logging/log4php/trunk/src/changes/changes.xml
logging/log4php/trunk/src/main/php/LoggerAppender.php
logging/log4php/trunk/src/test/php/configurators/LoggerConfiguratorPhpTest.php
Modified: logging/log4php/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/changes/changes.xml?rev=1147068&r1=1147067&r2=1147068&view=diff
==============================================================================
--- logging/log4php/trunk/src/changes/changes.xml (original)
+++ logging/log4php/trunk/src/changes/changes.xml Fri Jul 15 09:54:30 2011
@@ -21,6 +21,7 @@
</properties>
<body>
<release version="2.2.0" date="SVN">
+ <action date="2011-07-14" type="fix" issue="LOG4PHP-143" dev="Ivan Habunek" due-to="Justin Cherniak" due-to-email="justin dot cherniak at gmail dot com">LoggerConfiguratorPhp does not accept integer constants for appender threshold</action>
</release>
<release version="2.1.0" date="2011-07-13" description="Stabilizing">
<action date="2011-06-01" type="fix" issue="LOG4PHP-138" dev="Christian Grobmeier">Permission denied while renaming log file when hundred of users are accessing the application</action>
Modified: logging/log4php/trunk/src/main/php/LoggerAppender.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/main/php/LoggerAppender.php?rev=1147068&r1=1147067&r2=1147068&view=diff
==============================================================================
--- logging/log4php/trunk/src/main/php/LoggerAppender.php (original)
+++ logging/log4php/trunk/src/main/php/LoggerAppender.php Fri Jul 15 09:54:30 2011
@@ -213,10 +213,10 @@ abstract class LoggerAppender {
* @see LoggerOptionConverter::toLevel()
*/
public function setThreshold($threshold) {
- if(is_string($threshold)) {
- $this->threshold = LoggerOptionConverter::toLevel($threshold, null);
- } else if($threshold instanceof LoggerLevel) {
+ if($threshold instanceof LoggerLevel) {
$this->threshold = $threshold;
+ } else {
+ $this->threshold = LoggerOptionConverter::toLevel($threshold, null);
}
}
Modified: logging/log4php/trunk/src/test/php/configurators/LoggerConfiguratorPhpTest.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/test/php/configurators/LoggerConfiguratorPhpTest.php?rev=1147068&r1=1147067&r2=1147068&view=diff
==============================================================================
--- logging/log4php/trunk/src/test/php/configurators/LoggerConfiguratorPhpTest.php (original)
+++ logging/log4php/trunk/src/test/php/configurators/LoggerConfiguratorPhpTest.php Fri Jul 15 09:54:30 2011
@@ -42,7 +42,7 @@ class TestRenderer implements LoggerRend
class LoggerConfiguratorPhpTest extends PHPUnit_Framework_TestCase {
protected function setUp() {
-
+ Logger::resetConfiguration();
}
protected function tearDown() {
@@ -130,4 +130,58 @@ class LoggerConfiguratorPhpTest extends
self::assertEquals('test1,test2,test3', $actual);
}
+
+ /** Tests setting levels and thresholds using the integer constants. */
+ public function testLevelsConstant() {
+ Logger::configure(array (
+ 'rootLogger' => array (
+ 'level' => (string) LoggerLevel::ERROR,
+ 'appenders' => array (
+ 'default', 'filetest'
+ ),
+ ),
+ 'appenders' => array (
+ 'default' => array (
+ 'class' => 'LoggerAppenderEcho',
+ 'threshold' => LoggerLevel::FATAL
+ )
+ ),
+
+ ), 'LoggerConfiguratorPhp');
+
+
+ $root = Logger::getRootLogger();
+ self::assertEquals(LoggerLevel::getLevelError(), $root->getLevel());
+
+ $appender = $root->getAppender("default");
+ self::assertTrue($appender instanceof LoggerAppenderEcho);
+ self::assertSame(LoggerLevel::getLevelFatal(), $appender->getThreshold());
+ }
+
+ /** Tests setting levels and thresholds using the LoggerLevel objects. */
+ public function testLevelsObject() {
+ Logger::configure(array (
+ 'rootLogger' => array (
+ 'level' => LoggerLevel::getLevelError(),
+ 'appenders' => array (
+ 'default', 'filetest'
+ ),
+ ),
+ 'appenders' => array (
+ 'default' => array (
+ 'class' => 'LoggerAppenderEcho',
+ 'threshold' => LoggerLevel::getLevelFatal()
+ )
+ ),
+
+ ), 'LoggerConfiguratorPhp');
+
+
+ $root = Logger::getRootLogger();
+ self::assertEquals(LoggerLevel::getLevelError(), $root->getLevel());
+
+ $appender = $root->getAppender("default");
+ self::assertTrue($appender instanceof LoggerAppenderEcho);
+ self::assertSame(LoggerLevel::getLevelFatal(), $appender->getThreshold());
+ }
}
\ No newline at end of file