Hi,
Here's a patch to build.xml that forces all log objects to be NoOpLog
when running tests. This suppresses all the annoying output currently
generated.
Setting "suppressLogOutputDuringTests=false" in a build.properties file
will re-enable logging during tests again.
There might be a more compact way of doing this in the build.xml file;
ant specialists are welcome to optimise. In particular, if the
<condition> tag can be used outside a <target> tag, that would help.
Also attached is a patch to remove System.out.println(...) calls from
some of the unit tests.
Regards,
Simon
Index: build.xml
===================================================================
RCS file: /home/cvspublic/jakarta-commons/digester/build.xml,v
retrieving revision 1.47
diff -u -r1.47 build.xml
--- build.xml 4 Oct 2003 12:26:51 -0000 1.47
+++ build.xml 8 Oct 2003 03:03:45 -0000
@@ -99,6 +99,14 @@
<!-- ========== Test Execution Defaults =================================== -->
+ <property name="suppressLogOutputDuringTests" value="true"/>
+ <property name="log.factoryopt" value="org.apache.commons.logging.Log"/>
+ <property name="log.noop" value="org.apache.commons.logging.impl.NoOpLog"/>
+ <property name="log.class" value="${log.noop}"/>
+
+ <!--
+ <property name="logclass" value="org.apache.commons.logging.impl.NoOpLog"/>
+ -->
<!-- Construct unit test classpath -->
<path id="test.classpath">
@@ -272,8 +280,12 @@
<target name="test.factory" depends="compile.tests"
description="Run tests for loading Digester rules from XML ...">
<echo message="Running factory create tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.TestFactoryCreate"/>
<classpath refid="test.classpath"/>
</java>
@@ -282,8 +294,12 @@
<target name="test.xmlrules" depends="compile.tests"
description="Run tests for loading Digester rules from XML ...">
<echo message="Running xmlrules tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.xmlrules.DigesterLoaderTestSuite"/>
<classpath refid="test.classpath"/>
</java>
@@ -293,8 +309,12 @@
<target name="test.bpsr" depends="compile.tests"
description="Run tests for BeanPropertySetterRule ...">
<echo message="Running BeanPropertySetterRule tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.BeanPropertySetterRuleTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -304,8 +324,12 @@
<target name="test.callmethod" depends="compile.tests"
description="Run tests for CallMethodRule and CallParamRule ...">
<echo message="Running CallMethodRule tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.CallMethodRuleTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -314,8 +338,12 @@
<target name="test.objectparam" depends="compile.tests"
description="Run tests for ObjectParamRule ...">
<echo message="Running ObjectParamRule tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.ObjectParamRuleTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -324,8 +352,12 @@
<target name="test.digester" depends="compile.tests"
description="Run basic Digester unit tests ...">
<echo message="Running basic Digester tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.DigesterTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -335,8 +367,12 @@
<target name="test.matching" depends="compile.tests"
description="Run rule Digester test cases">
<echo message="Running rule Digester tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.RulesBaseTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -345,8 +381,12 @@
<target name="test.regex" depends="compile.tests"
description="Run tests for RegexRules">
<echo message="Running tests for RegexRules ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.RegexRulesTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -355,8 +395,12 @@
<target name="test.wdrules" depends="compile.tests"
description="Run tests for WithDefaultsRulesWrapper">
<echo message="Running tests for WithDefaultsRulesWrapper ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.WDRulesWrapperTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -365,8 +409,12 @@
<target name="test.matching.extended" depends="compile.tests"
description="Run rule Digester extended test cases">
<echo message="Running rule Digester tests for ExtendedBaseRules ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.EBRTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -376,8 +424,12 @@
<target name="test.rss" depends="compile.tests"
description="Run RSSDigester test cases">
<echo message="Running RSSDigester tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="org.apache.commons.digester.rss.RSSDigester"
fork="yes">
+ <jvmarg value="-D${logopt}"/>
<classpath refid="rss.classpath"/>
</java>
</target>
@@ -386,8 +438,12 @@
<target name="test.rule" depends="compile.tests"
description="Run rule Digester unit tests ...">
<echo message="Running Rule tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.RuleTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -396,8 +452,12 @@
<target name="test.spr" depends="compile.tests"
description="Run tests for SetPropertyRule ...">
<echo message="Running SetPropertyRule tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.SetPropertyRuleTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -407,8 +467,12 @@
<target name="test.node" depends="compile.tests"
description="Run NodeCreateRule tests ...">
<echo message="Running NodeCreateRule tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.NodeCreateRuleTestCase"/>
<classpath refid="test.classpath"/>
</java>
@@ -417,8 +481,12 @@
<target name="test.plugins" depends="compile.tests"
description="Run Plugins tests ...">
<echo message="Running Plugins tests ..."/>
+ <condition property="logopt" value="${log.factoryopt}=${log.class}">
+ <istrue value="${suppressLogOutputDuringTests}"/>
+ </condition>
<java classname="${test.runner}" fork="yes"
failonerror="${test.failonerror}">
+ <jvmarg value="-D${logopt}"/>
<arg value="org.apache.commons.digester.plugins.TestAll"/>
<classpath refid="test.classpath"/>
</java>
Index: src/test/org/apache/commons/digester/BeanPropertySetterRuleTestCase.java
===================================================================
RCS file: /home/cvspublic/jakarta-commons/digester/src/test/org/apache/commons/digester/BeanPropertySetterRuleTestCase.java,v
retrieving revision 1.11
diff -u -r1.11 BeanPropertySetterRuleTestCase.java
--- src/test/org/apache/commons/digester/BeanPropertySetterRuleTestCase.java 5 Oct 2003 15:35:50 -0000 1.11
+++ src/test/org/apache/commons/digester/BeanPropertySetterRuleTestCase.java 8 Oct 2003 03:04:26 -0000
@@ -363,7 +363,6 @@
digester.parse(xmlTestReader());
fail("Should have thrown NoSuchMethodException");
} catch (Exception e) {
- e.printStackTrace(System.err);
if (e instanceof InvocationTargetException) {
Throwable t =
((InvocationTargetException) e).getTargetException();
Index: src/test/org/apache/commons/digester/CallMethodRuleTestCase.java
===================================================================
RCS file: /home/cvspublic/jakarta-commons/digester/src/test/org/apache/commons/digester/CallMethodRuleTestCase.java,v
retrieving revision 1.10
diff -u -r1.10 CallMethodRuleTestCase.java
--- src/test/org/apache/commons/digester/CallMethodRuleTestCase.java 5 Oct 2003 15:36:14 -0000 1.10
+++ src/test/org/apache/commons/digester/CallMethodRuleTestCase.java 8 Oct 2003 03:04:26 -0000
@@ -517,8 +517,6 @@
digester.push(list);
digester.parse(reader);
- System.out.println(list);
-
NamedBean bean = (NamedBean) list.get(0);
assertEquals("Wrong name (1)", "Simple", bean.getName());
// these are added in deepest first order by the addRootRule
Index: src/test/org/apache/commons/digester/EBRTestCase.java
===================================================================
RCS file: /home/cvspublic/jakarta-commons/digester/src/test/org/apache/commons/digester/EBRTestCase.java,v
retrieving revision 1.8
diff -u -r1.8 EBRTestCase.java
--- src/test/org/apache/commons/digester/EBRTestCase.java 5 Oct 2003 15:35:57 -0000 1.8
+++ src/test/org/apache/commons/digester/EBRTestCase.java 8 Oct 2003 03:04:26 -0000
@@ -386,7 +386,6 @@
}
public void testAncesterMatch() throws Exception {
- System.out.println("Starting ancester match...");
// test fixed root ancester
digester.getRules().clear();
@@ -445,6 +444,5 @@
list = digester.getRules().match(null, "b/b/c/e/d");
assertEquals("Wild ancester match (2)", 1, list.size());
assertEquals("Match missed (5)", "star-b-c-star" , ((TestRule) list.get(0)).getIdentifier());
- System.out.println("Finished ancester match.");
}
}
Index: src/test/org/apache/commons/digester/xmlrules/DigesterLoaderTest.java
===================================================================
RCS file: /home/cvspublic/jakarta-commons/digester/src/test/org/apache/commons/digester/xmlrules/DigesterLoaderTest.java,v
retrieving revision 1.14
diff -u -r1.14 DigesterLoaderTest.java
--- src/test/org/apache/commons/digester/xmlrules/DigesterLoaderTest.java 5 Oct 2003 15:29:04 -0000 1.14
+++ src/test/org/apache/commons/digester/xmlrules/DigesterLoaderTest.java 8 Oct 2003 03:04:27 -0000
@@ -113,7 +113,6 @@
digester.push(new ArrayList());
Object root = digester.parse(input.openStream());
assertEquals("[foo1 baz1 foo2, foo3 foo4]",root.toString());
- //System.out.println(root);
}
/**
@@ -295,7 +294,7 @@
fail("Exception should have been propagated from create method.");
} catch (Exception e) {
/* What we expected */
- System.out.println(e.getClass().getName());
+ assertEquals(org.xml.sax.SAXParseException.class, e.getClass());
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]