You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ih...@apache.org on 2012/01/29 21:10:11 UTC
svn commit: r1237446 - in /logging/log4php/trunk/src:
main/php/helpers/LoggerOptionConverter.php
test/php/configurators/LoggerConfigurationAdapterINITest.php
test/resources/configs/adapters/ini/values.ini
Author: ihabunek
Date: Sun Jan 29 20:10:11 2012
New Revision: 1237446
URL: http://svn.apache.org/viewvc?rev=1237446&view=rev
Log:
LOG4PHP-167: Fixed converting of boolean values read from ini file without the INI_SCANNER_RAW option. Added more tests.
Added:
logging/log4php/trunk/src/test/resources/configs/adapters/ini/values.ini
Modified:
logging/log4php/trunk/src/main/php/helpers/LoggerOptionConverter.php
logging/log4php/trunk/src/test/php/configurators/LoggerConfigurationAdapterINITest.php
Modified: logging/log4php/trunk/src/main/php/helpers/LoggerOptionConverter.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/main/php/helpers/LoggerOptionConverter.php?rev=1237446&r1=1237445&r2=1237446&view=diff
==============================================================================
--- logging/log4php/trunk/src/main/php/helpers/LoggerOptionConverter.php (original)
+++ logging/log4php/trunk/src/main/php/helpers/LoggerOptionConverter.php Sun Jan 29 20:10:11 2012
@@ -36,8 +36,14 @@ class LoggerOptionConverter {
/** String values which are converted to boolean TRUE. */
private static $trueValues = array('1', 'true', 'yes', 'on');
- /** String values which are converted to boolean FALSE. */
- private static $falseValues = array('0', 'false', 'no', 'off');
+ /**
+ * String values which are converted to boolean FALSE.
+ *
+ * Note that an empty string must convert to false, because
+ * parse_ini_file() which is used for parsing configuration
+ * converts the value _false_ to an empty string.
+ */
+ private static $falseValues = array('0', 'false', 'no', 'off', '');
/**
* Read a predefined var.
Modified: logging/log4php/trunk/src/test/php/configurators/LoggerConfigurationAdapterINITest.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/test/php/configurators/LoggerConfigurationAdapterINITest.php?rev=1237446&r1=1237445&r2=1237446&view=diff
==============================================================================
--- logging/log4php/trunk/src/test/php/configurators/LoggerConfigurationAdapterINITest.php (original)
+++ logging/log4php/trunk/src/test/php/configurators/LoggerConfigurationAdapterINITest.php Sun Jan 29 20:10:11 2012
@@ -130,6 +130,39 @@ class LoggerConfigurationAdapterINITest
$adapter = new LoggerConfigurationAdapterINI();
$adapter->convert($url);
}
+
+ /**
+ * Check that various boolean equivalents from ini file convert properly
+ * to boolean.
+ */
+ public function testBooleanValues() {
+ $values = parse_ini_file(PHPUNIT_CONFIG_DIR . '/adapters/ini/values.ini');
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['unquoted_true']);
+ self::assertTrue($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['unquoted_yes']);
+ self::assertTrue($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['unquoted_false']);
+ self::assertFalse($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['unquoted_no']);
+ self::assertFalse($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['quoted_true']);
+ self::assertTrue($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['quoted_false']);
+ self::assertFalse($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['unquoted_one']);
+ self::assertTrue($actual);
+
+ $actual = LoggerOptionConverter::toBooleanEx($values['unquoted_zero']);
+ self::assertFalse($actual);
+ }
+
}
?>
\ No newline at end of file
Added: logging/log4php/trunk/src/test/resources/configs/adapters/ini/values.ini
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/test/resources/configs/adapters/ini/values.ini?rev=1237446&view=auto
==============================================================================
--- logging/log4php/trunk/src/test/resources/configs/adapters/ini/values.ini (added)
+++ logging/log4php/trunk/src/test/resources/configs/adapters/ini/values.ini Sun Jan 29 20:10:11 2012
@@ -0,0 +1,8 @@
+unquoted_true = true
+unquoted_false = false
+unquoted_yes = true
+unquoted_no = false
+quoted_true = "true"
+quoted_false = "false"
+unquoted_one = 1
+unquoted_zero = 0
\ No newline at end of file