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 20:43:23 UTC
svn commit: r1237433 - in /logging/log4php/trunk/src:
main/php/appenders/LoggerAppenderMailEvent.php
test/php/appenders/LoggerAppenderMailEventTest.php
Author: ihabunek
Date: Sun Jan 29 19:43:22 2012
New Revision: 1237433
URL: http://svn.apache.org/viewvc?rev=1237433&view=rev
Log:
Improved error reporting for mail event appender. Removed thrown exceptions.
Modified:
logging/log4php/trunk/src/main/php/appenders/LoggerAppenderMailEvent.php
logging/log4php/trunk/src/test/php/appenders/LoggerAppenderMailEventTest.php
Modified: logging/log4php/trunk/src/main/php/appenders/LoggerAppenderMailEvent.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/main/php/appenders/LoggerAppenderMailEvent.php?rev=1237433&r1=1237432&r2=1237433&view=diff
==============================================================================
--- logging/log4php/trunk/src/main/php/appenders/LoggerAppenderMailEvent.php (original)
+++ logging/log4php/trunk/src/main/php/appenders/LoggerAppenderMailEvent.php Sun Jan 29 19:43:22 2012
@@ -82,16 +82,17 @@ class LoggerAppenderMailEvent extends Lo
protected $dry = false;
public function activateOptions() {
- if (empty($this->layout)) {
- throw new LoggerException("LoggerAppenderMailEvent requires layout!");
- }
if (empty($this->to)) {
- throw new LoggerException("LoggerAppenderMailEvent was initialized with empty 'from' ($this->from) or 'to' ($this->to) Adress!");
+ $this->warn("Required parameter 'to' not set. Closing appender.");
+ $this->close = true;
+ return;
}
$sendmail_from = ini_get('sendmail_from');
if (empty($this->from) and empty($sendmail_from)) {
- throw new LoggerException("LoggerAppenderMailEvent requires 'from' or on win32 at least the ini variable sendmail_from!");
+ $this->warn("Required parameter 'from' not set. Closing appender.");
+ $this->close = true;
+ return;
}
$this->closed = false;
Modified: logging/log4php/trunk/src/test/php/appenders/LoggerAppenderMailEventTest.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/test/php/appenders/LoggerAppenderMailEventTest.php?rev=1237433&r1=1237432&r2=1237433&view=diff
==============================================================================
--- logging/log4php/trunk/src/test/php/appenders/LoggerAppenderMailEventTest.php (original)
+++ logging/log4php/trunk/src/test/php/appenders/LoggerAppenderMailEventTest.php Sun Jan 29 19:43:22 2012
@@ -27,7 +27,7 @@
* @group appenders
*/
class LoggerAppenderMailEventTest extends PHPUnit_Framework_TestCase {
-
+
public function testRequiresLayout() {
$appender = new LoggerAppenderMailEvent();
self::assertTrue($appender->requiresLayout());
@@ -53,16 +53,29 @@ class LoggerAppenderMailEventTest extend
$e = "DRY MODE OF MAIL APP.: Send mail to: test@example.com with additional headers 'From: Testsender' and content: ERROR - testmessage".PHP_EOL;
self::assertEquals($e, $v);
$appender->close();
- }
+ }
- /**
- * Check if invalid configurations are rejected.
- * @expectedException LoggerException with empty
- */
- public function testEmptyTo() {
- $appender = new LoggerAppenderMailEvent("myname");
- $appender->setLayout(new LoggerLayoutSimple());
- $appender->setFrom('info@example.com');
- $appender->activateOptions();
- }
+ /**
+ * Check an error is reported if 'to' is not set.
+ * @expectedException PHPUnit_Framework_Error
+ * @expectedExceptionMessage Required parameter 'to' not set.
+ */
+ public function testEmptyTo() {
+ $appender = new LoggerAppenderMailEvent("myname");
+ $appender->setLayout(new LoggerLayoutSimple());
+ $appender->setFrom('info@example.com');
+ $appender->activateOptions();
+ }
+
+ /**
+ * Check an error is reported if 'from' is not set.
+ * @expectedException PHPUnit_Framework_Error
+ * @expectedExceptionMessage Required parameter 'from' not set.
+ */
+ public function testEmptyFrom() {
+ $appender = new LoggerAppenderMailEvent("myname");
+ $appender->setLayout(new LoggerLayoutSimple());
+ $appender->setTo('info@example.com');
+ $appender->activateOptions();
+ }
}