You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by jg...@apache.org on 2006/06/02 07:27:26 UTC
svn commit: r411044 - in
/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit:
JUnitVersionHelper.java XMLJUnitResultFormatter.java
Author: jglick
Date: Thu Jun 1 22:27:26 2006
New Revision: 411044
URL: http://svn.apache.org/viewvc?rev=411044&view=rev
Log:
Stefan pointed out that the XML formatter was mistakenly using "JUnit4TestFacade"
as the "class name" for simple TestCase's run under JUnit 4.
Modified:
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitVersionHelper.java
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java
Modified: ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitVersionHelper.java
URL: http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitVersionHelper.java?rev=411044&r1=411043&r2=411044&view=diff
==============================================================================
--- ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitVersionHelper.java (original)
+++ ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitVersionHelper.java Thu Jun 1 22:27:26 2006
@@ -93,4 +93,22 @@
return "unknown";
}
+ /**
+ * Tries to find the name of the class which a test represents
+ * across JUnit 3 and 4.
+ */
+ static String getTestCaseClassName(Test test) {
+ String className = test.getClass().getName();
+ if (className.equals("junit.framework.JUnit4TestCaseFacade")) {
+ // JUnit 4 wraps solo tests this way. We can extract
+ // the original test name with a little hack.
+ String name = test.toString();
+ int paren = name.lastIndexOf('(');
+ if (paren != -1 && name.endsWith(")")) {
+ className = name.substring(paren + 1, name.length() - 1);
+ }
+ }
+ return className;
+ }
+
}
Modified: ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java
URL: http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java?rev=411044&r1=411043&r2=411044&view=diff
==============================================================================
--- ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java (original)
+++ ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java Thu Jun 1 22:27:26 2006
@@ -200,7 +200,7 @@
// a TestSuite can contain Tests from multiple classes,
// even tests with the same name - disambiguate them.
currentTest.setAttribute(ATTR_CLASSNAME,
- test.getClass().getName());
+ JUnitVersionHelper.getTestCaseClassName(test));
rootElement.appendChild(currentTest);
testElements.put(test, currentTest);
} else {
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org