You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by ev...@apache.org on 2005/01/26 23:10:50 UTC

svn commit: r126544 - /maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java /maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml

Author: evenisse
Date: Wed Jan 26 14:10:49 2005
New Revision: 126544

URL: http://svn.apache.org/viewcvs?view=rev&rev=126544
Log:
MPJCOVERAGE-18. Fix report for Inner/anonymous classes.
Modified:
   maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java
   maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml

Modified: maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java
Url: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java?view=diff&rev=126544&p1=maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java&r1=126543&p2=maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java&r2=126544
==============================================================================
--- maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java	(original)
+++ maven/maven-1/plugins/trunk/jcoverage/src/main/org/apache/maven/jcoveragereport/CoverageReport.java	Wed Jan 26 14:10:49 2005
@@ -33,7 +33,7 @@
 
 /**
  * @author Emmanuel Venisse
- * @version $Id: CoverageReport.java,v 1.11 2004/10/15 14:49:17 evenisse Exp $
+ * @version $Id$
  */
 public class CoverageReport
 {
@@ -280,7 +280,7 @@
                     Clazz cl = (Clazz) it.next();
                     if (cl.getFile().indexOf("[Unknown]")<0)
                     {
-                        String classFilename = cl.getFile().substring(cl.getFile().lastIndexOf("/")+1, cl.getFile().lastIndexOf(".")) + ".html";
+                        String classFilename = getShortFilename(cl);
                         pw.println("<tr class=\"report\">");
                         pw.println("<td class=\"reportText\" colspan=\"2\"><a href=\"" + classFilename + "\">" + cl.getName() + "</a></td>");
                         pw.println("<td class=\"reportValue\">" + generatePercentResult(getPercentValue(cl.getLineRate())) + "</td>");
@@ -331,7 +331,7 @@
                         Clazz cl = (Clazz) iter.next();
                         if (cl.getFile().indexOf("[Unknown]")<0)
                         {
-                            String classFilename = cl.getFile().substring(cl.getFile().lastIndexOf("/")+1, cl.getFile().lastIndexOf(".")) + ".html";
+                            String classFilename = getShortFilename(cl);
                             pw.println("<tr class=\"report\">");
                             pw.println("<td class=\"reportText\" colspan=\"2\"><a href=\"" + classFilename + "\">" + cl.getName() + "</a></td>");
                             pw.println("<td class=\"reportValue\">" + generatePercentResult(getPercentValue(cl.getLineRate())) + "</td>");
@@ -349,6 +349,34 @@
         pw.close();
     }
 
+    /**
+     * Gets the name to output the file to.
+     * 
+     * @param cl  the class to get the filename for
+     * @return the filename
+     */
+    private String getShortFilename(Clazz cl) {
+        String name = cl.getFile().substring(cl.getFile().lastIndexOf("/")+1, cl.getFile().lastIndexOf("."));
+        if (cl.getName().indexOf('$') >= 0) {
+            name = name + "_" + cl.getName().substring(cl.getName().indexOf('$') + 1);
+        }
+        return name + ".html";
+    }
+
+    /**
+     * Gets the name to output the file to.
+     * 
+     * @param cl  the class to get the filename for
+     * @return the filename
+     */
+    private String getFullFilename(Clazz cl) {
+        String name = cl.getFile().substring(0, cl.getFile().lastIndexOf("."));
+        if (cl.getName().indexOf('$') >= 0) {
+            name = name + "_" + cl.getName().substring(cl.getName().indexOf('$') + 1);
+        }
+        return name + ".html";
+    }
+
     private void generateSourceFiles(File dir) throws IOException
     {
         for (Iterator iter = coverage.getClasses().iterator(); iter.hasNext(); )
@@ -364,7 +392,7 @@
 
     private void generateSourceFile(File directory, Clazz theClass) throws IOException
     {
-        String srcOutputFilename = theClass.getFile().substring(0, theClass.getFile().lastIndexOf(".")) + ".html";
+        String srcOutputFilename = getFullFilename(theClass);
         File srcOutputFile = new File(directory, srcOutputFilename);
         File dirOutputFile = srcOutputFile.getParentFile();
         if (dirOutputFile != null)

Modified: maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml
Url: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml?view=diff&rev=126544&p1=maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml&r1=126543&p2=maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml&r2=126544
==============================================================================
--- maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml	(original)
+++ maven/maven-1/plugins/trunk/jcoverage/xdocs/changes.xml	Wed Jan 26 14:10:49 2005
@@ -28,6 +28,7 @@
       <action dev="evenisse" type="fix">Open report in a new window.</action>
       <action dev="evenisse" type="fix" issue="MPJCOVERAGE-20">Allow comma separeted values for maven.jcoverage.instrumentation.excludes.</action>
       <action dev="evenisse" type="fix" issue="MPJCOVERAGE-16">Fix tests failures when user use maven.jcoverage.instrumentation.excludes</action>
+      <action dev="evenisse" type="fix" issue="MPJCOVERAGE-18">Fix report for Inner/anonymous classes.</action>
     </release>
     <release version="1.0.9" date="2004-11-10">
       <action dev="brett" type="fix">Fix incorrect usage of maven:addPath tag</action>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org