ceki 02/04/16 07:36:15 Modified: tests build.xml tests/src/java/org/apache/log4j PatternLayoutTestCase.java tests/src/java/org/apache/log4j/net SocketServerTestCase.java Added: tests/input socketServer1.properties socketServer2.properties socketServer3.properties socketServer4.properties tests/src/java/org/apache/log4j/net ShortSocketServer.java tests/witness socketServer.1 socketServer.2 socketServer.3 socketServer.4 Removed: tests/input shortSocketServer1.properties Log: new test cases for SocketAppender and SockerServer. Revision Changes Path 1.11 +3 -1 jakarta-log4j/tests/build.xml Index: build.xml =================================================================== RCS file: /home/cvs/jakarta-log4j/tests/build.xml,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- build.xml 16 Apr 2002 10:41:45 -0000 1.10 +++ build.xml 16 Apr 2002 14:36:14 -0000 1.11 @@ -165,12 +165,14 @@ <target name="SocketServer" depends="build"> <parallel> <java classname="org.apache.log4j.net.ShortSocketServer" fork="yes"> - <arg value="input/shortSocketServer1.properties"/> + <arg value="4"/> + <arg value="input/socketServer"/> <classpath refid="tests.classpath"/> </java> <sequential> <sleep seconds="2"/> <junit printsummary="yes" fork="yes" haltonfailure="yes"> + <sysproperty key="testNumber" value="1"/> <classpath refid="tests.classpath"/> <formatter type="plain" usefile="false" /> <test name="org.apache.log4j.net.SocketServerTestCase" /> 1.1 jakarta-log4j/tests/input/socketServer1.properties Index: socketServer1.properties =================================================================== log4j.rootLogger=DEBUG, A log4j.logger.org.apache.log4j.test.ShortSocketServer=WARN log4j.logger.org.apache.log4j.net.SocketNode=WARN log4j.appender.A=org.apache.log4j.FileAppender log4j.appender.A.file=output/temp log4j.appender.A.Append=false log4j.appender.A.layout=org.apache.log4j.PatternLayout log4j.appender.A.layout.ConversionPattern=%5p %x [%t] %c %m%n 1.1 jakarta-log4j/tests/input/socketServer2.properties Index: socketServer2.properties =================================================================== log4j.rootLogger=DEBUG, A log4j.logger.org.apache.log4j.test.ShortSocketServer=WARN log4j.logger.org.apache.log4j.net.SocketNode=WARN log4j.appender.A=org.apache.log4j.FileAppender log4j.appender.A.file=output/temp log4j.appender.A.Append=false log4j.appender.A.layout=org.apache.log4j.PatternLayout log4j.appender.A.layout.ConversionPattern=%5p %x [%t] %C (%F:%L) %m%n 1.1 jakarta-log4j/tests/input/socketServer3.properties Index: socketServer3.properties =================================================================== log4j.rootLogger=DEBUG, A log4j.Logger.org.apache.log4j.test.ShortSocketServer=WARN log4j.Logger.org.apache.log4j.net.SocketNode=WARN log4j.appender.A=org.apache.log4j.FileAppender log4j.appender.A.file=output/temp log4j.appender.A.Append=false log4j.appender.A.layout=org.apache.log4j.PatternLayout log4j.appender.A.layout.ConversionPattern=%5p %x [%t] %C (%F:%L) %m%n 1.1 jakarta-log4j/tests/input/socketServer4.properties Index: socketServer4.properties =================================================================== log4j.rootLogger=DEBUG, A log4j.Logger.org.apache.log4j.test.ShortSocketServer=WARN log4j.Logger.org.apache.log4j.net.SocketNode=WARN log4j.appender.A=org.apache.log4j.FileAppender log4j.appender.A.file=output/temp log4j.appender.A.Append=false log4j.appender.A.layout=org.apache.log4j.PatternLayout log4j.appender.A.layout.ConversionPattern=%5p %x %X{key1}%X{key4} [%t] %c{1} - %m%n 1.4 +4 -4 jakarta-log4j/tests/src/java/org/apache/log4j/PatternLayoutTestCase.java Index: PatternLayoutTestCase.java =================================================================== RCS file: /home/cvs/jakarta-log4j/tests/src/java/org/apache/log4j/PatternLayoutTestCase.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- PatternLayoutTestCase.java 16 Apr 2002 08:52:34 -0000 1.3 +++ PatternLayoutTestCase.java 16 Apr 2002 14:36:15 -0000 1.4 @@ -175,7 +175,7 @@ ControlFilter cf1 = new ControlFilter(new String[]{PAT6, EXCEPTION1, EXCEPTION2, EXCEPTION3}); Transformer.transform(TEMP, FILTERED, new Filter[] {cf1, - new LineNumberFilter(), }); + new LineNumberFilter()}); assertTrue(Compare.compare(FILTERED, "witness/patternLayout.10")); } @@ -185,7 +185,7 @@ ControlFilter cf1 = new ControlFilter(new String[]{PAT11a, PAT11b, EXCEPTION1, EXCEPTION2, EXCEPTION3}); Transformer.transform(TEMP, FILTERED, new Filter[] {cf1, - new LineNumberFilter(), }); + new LineNumberFilter()}); assertTrue(Compare.compare(FILTERED, "witness/patternLayout.11")); } @@ -195,7 +195,7 @@ ControlFilter cf1 = new ControlFilter(new String[]{PAT12, EXCEPTION1, EXCEPTION2, EXCEPTION3}); Transformer.transform(TEMP, FILTERED, new Filter[] {cf1, - new LineNumberFilter(), }); + new LineNumberFilter()}); assertTrue(Compare.compare(FILTERED, "witness/patternLayout.12")); } @@ -205,7 +205,7 @@ ControlFilter cf1 = new ControlFilter(new String[]{PAT13, EXCEPTION1, EXCEPTION2, EXCEPTION3}); Transformer.transform(TEMP, FILTERED, new Filter[] {cf1, - new LineNumberFilter(), }); + new LineNumberFilter()}); assertTrue(Compare.compare(FILTERED, "witness/patternLayout.13")); } 1.2 +92 -10 jakarta-log4j/tests/src/java/org/apache/log4j/net/SocketServerTestCase.java Index: SocketServerTestCase.java =================================================================== RCS file: /home/cvs/jakarta-log4j/tests/src/java/org/apache/log4j/net/SocketServerTestCase.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- SocketServerTestCase.java 16 Apr 2002 10:41:45 -0000 1.1 +++ SocketServerTestCase.java 16 Apr 2002 14:36:15 -0000 1.2 @@ -31,35 +31,109 @@ */ public class SocketServerTestCase extends TestCase { - static Logger logger = Logger.getLogger(SocketAppenderTestCase.class); + static String TEMP = "output/temp"; + static String FILTERED = "output/filtered"; - static public final int PORT = 12345; - + // %5p %x [%t] %c %m%n + // DEBUG T1 [main] org.apache.log4j.net.SocketAppenderTestCase Message 1 + static String PAT1 = "^(DEBUG| INFO| WARN|ERROR|FATAL|LETHAL) T1 \\[main]\\ " + + ".* Message \\d{1,2}"; + + // DEBUG T2 [main] ? (?:?) Message 1 + static String PAT2 = "^(DEBUG| INFO| WARN|ERROR|FATAL|LETHAL) T2 \\[main]\\ " + + "\\? \\(\\?:\\?\\) Message \\d{1,2}"; + + + // DEBUG T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:121) Message 1 + static String PAT3 = "^(DEBUG| INFO| WARN|ERROR|FATAL|LETHAL) T3 \\[main]\\ " + + "org.apache.log4j.net.SocketServerTestCase " + + "\\(SocketServerTestCase.java:\\d{3}\\) Message \\d{1,2}"; + + + // DEBUG some T4 MDC-TEST4 [main] SocketAppenderTestCase - Message 1 + // DEBUG some T4 MDC-TEST4 [main] SocketAppenderTestCase - Message 1 + static String PAT4 = "^(DEBUG| INFO| WARN|ERROR|FATAL|LETHAL) some T4 MDC-TEST4 \\[main]\\" + + " (root|SocketServerTestCase) - Message \\d{1,2}"; + + + static String EXCEPTION1 = "java.lang.Exception: Just testing"; + static String EXCEPTION2 = "\\s*at .*\\(.*:\\d{1,4}\\)"; + static String EXCEPTION3 = "\\s*at .*\\(Native Method\\)"; + + + static Logger logger = Logger.getLogger(SocketServerTestCase.class); + static public final int PORT = 12345; static Logger rootLogger = Logger.getRootLogger(); + SocketAppender socketAppender; public SocketServerTestCase(String name) { super(name); } public void setUp() { - System.out.println("-----------------Setting up test case."); - SocketAppender socketAppender = new SocketAppender("localhost", PORT); + System.out.println("Setting up test case."); + socketAppender = new SocketAppender("localhost", PORT); rootLogger.addAppender(socketAppender); } public void tearDown() { - System.out.println("---------------Tearing down test case."); + System.out.println("Tearing down test case."); + socketAppender = null; rootLogger.removeAllAppenders(); } - public void test1() { - common(); + public void test1() throws Exception { + common("T1", "key1", "MDC-TEST1"); + delay(1); + ControlFilter cf = new ControlFilter(new String[]{PAT1, EXCEPTION1, + EXCEPTION2, EXCEPTION3}); + + Transformer.transform(TEMP, FILTERED, new Filter[] {cf, new LineNumberFilter()}); + + assertTrue(Compare.compare(FILTERED, "witness/socketServer.1")); + } + + public void test2() throws Exception { + common("T2", "key2", "MDC-TEST2"); + delay(1); + ControlFilter cf = new ControlFilter(new String[]{PAT2, EXCEPTION1, + EXCEPTION2, EXCEPTION3}); + + Transformer.transform(TEMP, FILTERED, new Filter[] {cf, new LineNumberFilter()}); + + assertTrue(Compare.compare(FILTERED, "witness/socketServer.2")); + } + + public void test3() throws Exception { + socketAppender.setLocationInfo(true); + common("T3", "key3", "MDC-TEST3"); + delay(1); + ControlFilter cf = new ControlFilter(new String[]{PAT3, EXCEPTION1, + EXCEPTION2, EXCEPTION3}); + + Transformer.transform(TEMP, FILTERED, new Filter[] {cf, new LineNumberFilter()}); + + assertTrue(Compare.compare(FILTERED, "witness/socketServer.3")); + } + + public void test4() throws Exception { + socketAppender.setLocationInfo(true); + NDC.push("some"); + common("T4", "key4", "MDC-TEST4"); + delay(1); + ControlFilter cf = new ControlFilter(new String[]{PAT4, EXCEPTION1, + EXCEPTION2, EXCEPTION3}); + + Transformer.transform(TEMP, FILTERED, new Filter[] {cf, new LineNumberFilter()}); + + assertTrue(Compare.compare(FILTERED, "witness/socketServer.4")); } static - void common() { + void common(String dc, String key, Object o) { int i = -1; - NDC.push("NDC"); + NDC.push(dc); + MDC.put(key, o); Logger root = Logger.getRootLogger(); logger.log(XLevel.TRACE, "Message " + ++i); @@ -72,13 +146,21 @@ Exception e = new Exception("Just testing"); logger.debug("Message " + ++i, e); root.error("Message " + ++i, e); + NDC.pop(); + MDC.remove(key); } + public void delay(int secs) { + try {Thread.currentThread().sleep(secs*1000);} catch(Exception e) {} + } public static Test suite() { TestSuite suite = new TestSuite(); suite.addTest(new SocketServerTestCase("test1")); + suite.addTest(new SocketServerTestCase("test2")); + suite.addTest(new SocketServerTestCase("test3")); + suite.addTest(new SocketServerTestCase("test4")); return suite; } } 1.1 jakarta-log4j/tests/src/java/org/apache/log4j/net/ShortSocketServer.java Index: ShortSocketServer.java =================================================================== /* Copyright (C) The Apache Software Foundation. All rights reserved. * * This software is published under the terms of the Apache Software License * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ package org.apache.log4j.net; import java.net.Socket; import java.net.ServerSocket; import java.io.IOException; import org.apache.log4j.Logger; import org.apache.log4j.LogManager; import org.apache.log4j.PropertyConfigurator; import org.apache.log4j.helpers.LogLog; import org.apache.log4j.net.SocketNode; import org.apache.log4j.net.SocketServer; /** This SocketServer exits after just one connection from a client. @author Ceki Gulcu */ public class ShortSocketServer { static Logger cat = Logger.getLogger(ShortSocketServer.class); public static void main(String args[]) throws Exception { int totalTests = 0; String prefix = null; if(args.length == 2) { totalTests = Integer.parseInt(args[0]); prefix = args[1]; } else { usage("Wrong number of arguments."); } LogLog.debug("Listening on port " + SocketServerTestCase.PORT); ServerSocket serverSocket = new ServerSocket(SocketServerTestCase.PORT); for(int i = 1; i <= totalTests; i++) { PropertyConfigurator.configure(prefix+i+".properties"); LogLog.debug("Waiting to accept a new client."); Socket socket = serverSocket.accept(); LogLog.debug("Connected to client at " + socket.getInetAddress()); LogLog.debug("Starting new socket node."); SocketNode sn = new SocketNode(socket, LogManager.getLoggerRepository()); Thread t = new Thread(sn); t.start(); t.join(); } } static void usage(String msg) { System.err.println(msg); System.err.println( "Usage: java " +ShortSocketServer.class.getName() + " totalTests configFilePrefix"); System.exit(1); } } 1.1 jakarta-log4j/tests/witness/socketServer.1 Index: socketServer.1 =================================================================== DEBUG T1 [main] org.apache.log4j.net.SocketServerTestCase Message 1 DEBUG T1 [main] root Message 2 INFO T1 [main] org.apache.log4j.net.SocketServerTestCase Message 3 WARN T1 [main] org.apache.log4j.net.SocketServerTestCase Message 4 LETHAL T1 [main] org.apache.log4j.net.SocketServerTestCase Message 5 DEBUG T1 [main] org.apache.log4j.net.SocketServerTestCase Message 6 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test1(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) ERROR T1 [main] root Message 7 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test1(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) 1.1 jakarta-log4j/tests/witness/socketServer.2 Index: socketServer.2 =================================================================== DEBUG T2 [main] ? (?:?) Message 1 DEBUG T2 [main] ? (?:?) Message 2 INFO T2 [main] ? (?:?) Message 3 WARN T2 [main] ? (?:?) Message 4 LETHAL T2 [main] ? (?:?) Message 5 DEBUG T2 [main] ? (?:?) Message 6 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test2(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) ERROR T2 [main] ? (?:?) Message 7 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test2(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) 1.1 jakarta-log4j/tests/witness/socketServer.3 Index: socketServer.3 =================================================================== DEBUG T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 1 DEBUG T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 2 INFO T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 3 WARN T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 4 LETHAL T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 5 DEBUG T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 6 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test3(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) ERROR T3 [main] org.apache.log4j.net.SocketServerTestCase (SocketServerTestCase.java:XXX) Message 7 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test3(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) 1.1 jakarta-log4j/tests/witness/socketServer.4 Index: socketServer.4 =================================================================== DEBUG some T4 MDC-TEST4 [main] SocketServerTestCase - Message 1 DEBUG some T4 MDC-TEST4 [main] root - Message 2 INFO some T4 MDC-TEST4 [main] SocketServerTestCase - Message 3 WARN some T4 MDC-TEST4 [main] SocketServerTestCase - Message 4 LETHAL some T4 MDC-TEST4 [main] SocketServerTestCase - Message 5 DEBUG some T4 MDC-TEST4 [main] SocketServerTestCase - Message 6 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test4(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX) ERROR some T4 MDC-TEST4 [main] root - Message 7 java.lang.Exception: Just testing at org.apache.log4j.net.SocketServerTestCase.common(SocketServerTestCase.java:XXX) at org.apache.log4j.net.SocketServerTestCase.test4(SocketServerTestCase.java:XXX) at java.lang.reflect.Method.invoke(Native Method) at junit.framework.TestCase.runTest(TestCase.java:XXX) at junit.framework.TestCase.runBare(TestCase.java:XXX) at junit.framework.TestResult$1.protect(TestResult.java:XXX) at junit.framework.TestResult.runProtected(TestResult.java:XXX) at junit.framework.TestResult.run(TestResult.java:XXX) at junit.framework.TestCase.run(TestCase.java:XXX) at junit.framework.TestSuite.runTest(TestSuite.java:XXX) at junit.framework.TestSuite.run(TestSuite.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:XXX) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:XXX)
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>