1
0

New test case for simple log date time setting

git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/logging/trunk@139033 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Robert Burrell Donkin
2004-05-30 10:32:25 +00:00
parent 7e7bf1ad60
commit ed0269ef72
4 changed files with 105 additions and 6 deletions

View File

@@ -21,7 +21,7 @@
<!--
"Logging" component of the Jakarta Commons Subproject
$Id: build.xml,v 1.45 2004/05/19 21:02:10 rdonkin Exp $
$Id: build.xml,v 1.46 2004/05/30 10:32:25 rdonkin Exp $
-->
@@ -739,6 +739,20 @@ limitations under the License.--&gt;'>
<classpath refid="test.classpath"/>
</java>
<echo message="Custom Configuration With DateTime (SimpleLog Selected)"/>
<java classname="${test.runner}" fork="yes" failonerror="${test.failonerror}">
<sysproperty key="org.apache.commons.logging.Log"
value="org.apache.commons.logging.simple.DecoratedSimpleLog"/>
<sysproperty key="org.apache.commons.logging.simplelog.defaultlog"
value="debug"/>
<sysproperty key="org.apache.commons.logging.simplelog.dateTimeFormat"
value="dd.mm.yyyy"/>
<sysproperty key="org.apache.commons.logging.simplelog.showdatetime"
value="true"/>
<arg value="org.apache.commons.logging.simple.DateTimeCustomConfigTestCase"/>
<classpath refid="test.classpath"/>
</java>
<echo message="Basic Operations"/>
<java classname="${test.runner}" fork="yes" failonerror="${test.failonerror}">
<sysproperty key="org.apache.commons.logging.Log"

View File

@@ -32,9 +32,8 @@ import org.apache.commons.logging.impl.SimpleLog;
* properties.</p>
*
* @author Craig R. McClanahan
* @version $Revision: 1.5 $ $Date: 2004/05/29 10:43:35 $
* @version $Revision: 1.6 $ $Date: 2004/05/30 10:32:25 $
*/
public class CustomConfigTestCase extends DefaultConfigTestCase {
@@ -163,15 +162,26 @@ public class CustomConfigTestCase extends DefaultConfigTestCase {
assertEquals(SimpleLog.LOG_LEVEL_DEBUG, ((SimpleLog) log).getLevel());
// Can we validate the extra exposed properties?
assertEquals("yyyy/MM/dd HH:mm:ss:SSS zzz",
((DecoratedSimpleLog) log).getDateTimeFormat());
checkDecoratedDateTime();
assertEquals("DecoratedLogger",
((DecoratedSimpleLog) log).getLogName());
assertTrue(!((DecoratedSimpleLog) log).getShowDateTime());
checkShowDateTime();
assertTrue(((DecoratedSimpleLog) log).getShowShortName());
}
/** Hook for subclassses */
protected void checkShowDateTime() {
assertTrue(!((DecoratedSimpleLog) log).getShowDateTime());
}
/** Hook for subclasses */
protected void checkDecoratedDateTime() {
assertEquals("yyyy/MM/dd HH:mm:ss:SSS zzz",
((DecoratedSimpleLog) log).getDateTimeFormat());
}
// Check the actual log records against the expected ones
protected void checkExpected() {

View File

@@ -0,0 +1,70 @@
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.commons.logging.simple;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.text.DateFormat;
import junit.framework.Test;
import junit.framework.TestSuite;
/**
* Tests custom date time format configuration
*/
public class DateTimeCustomConfigTestCase extends CustomConfigTestCase {
// ----------------------------------------------------------- Constructors
/**
* Return the tests included in this test suite.
*/
public static Test suite() {
return (new TestSuite(DateTimeCustomConfigTestCase.class));
}
/**
* <p>Construct a new instance of this test case.</p>
*
* @param name Name of the test case
*/
public DateTimeCustomConfigTestCase(String name) {
super(name);
}
// ----------------------------------------------------------- Methods
/** Checks that the date time format has been successfully set */
protected void checkDecoratedDateTime() {
assertEquals("Expected date format to be set", "dd.mm.yyyy",
((DecoratedSimpleLog) log).getDateTimeFormat());
// try the formatter
Date now = new Date();
DateFormat formatter = ((DecoratedSimpleLog) log).getDateTimeFormatter();
SimpleDateFormat sampleFormatter = new SimpleDateFormat("dd.mm.yyyy");
assertEquals("Date should be formatters to pattern dd.mm.yyyy", sampleFormatter.format(now), formatter.format(now));
}
/** Hook for subclassses */
protected void checkShowDateTime() {
assertTrue(((DecoratedSimpleLog) log).getShowDateTime());
}
}

View File

@@ -19,6 +19,7 @@ package org.apache.commons.logging.simple;
import java.util.ArrayList;
import java.util.List;
import java.text.DateFormat;
import org.apache.commons.logging.impl.SimpleLog;
@@ -40,6 +41,10 @@ public class DecoratedSimpleLog extends SimpleLog {
// ------------------------------------------------------------- Properties
public DateFormat getDateTimeFormatter() {
return (dateFormatter);
}
public String getDateTimeFormat() {
return (dateTimeFormat);