You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ev...@apache.org on 2008/10/09 06:57:19 UTC
svn commit: r703056 - in /continuum/branches/continuum-1.2.x:
continuum-core/src/main/resources/org/apache/maven/continuum/notification/mail/templates/
continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/
continuum-reports/src/t...
Author: evenisse
Date: Wed Oct 8 21:57:18 2008
New Revision: 703056
URL: http://svn.apache.org/viewvc?rev=703056&view=rev
Log:
[CONTINUUM-1694] Adding Number of Errors and Test Success Rate to Notification Email
Submitted by: Murali Mohan
Modified:
continuum/branches/continuum-1.2.x/continuum-core/src/main/resources/org/apache/maven/continuum/notification/mail/templates/common.vm
continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGenerator.java
continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestResult.java
continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestSuite.java
continuum/branches/continuum-1.2.x/continuum-reports/src/test/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGeneratorTest.java
continuum/branches/continuum-1.2.x/continuum-reports/src/test/resources/continuum-core/TEST-org.apache.maven.continuum.scm.ContinuumScmTest.xml
Modified: continuum/branches/continuum-1.2.x/continuum-core/src/main/resources/org/apache/maven/continuum/notification/mail/templates/common.vm
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-1.2.x/continuum-core/src/main/resources/org/apache/maven/continuum/notification/mail/templates/common.vm?rev=703056&r1=703055&r2=703056&view=diff
==============================================================================
--- continuum/branches/continuum-1.2.x/continuum-core/src/main/resources/org/apache/maven/continuum/notification/mail/templates/common.vm (original)
+++ continuum/branches/continuum-1.2.x/continuum-core/src/main/resources/org/apache/maven/continuum/notification/mail/templates/common.vm Wed Oct 8 21:57:18 2008
@@ -160,6 +160,11 @@
****************************************************************************
Tests: $testResult.testCount
Failures: $testResult.failureCount
+Errors: $testResult.errorCount
+#if( $testResult.testCount != 0)
+#set( $successRate = (($testResult.testCount - ( $testResult.failureCount + $testResult.errorCount)) * 100) / $testResult.testCount)
+Success Rate: $successRate
+#end
Total time: $testResult.totalTime
#end
Modified: continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGenerator.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGenerator.java?rev=703056&r1=703055&r2=703056&view=diff
==============================================================================
--- continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGenerator.java (original)
+++ continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGenerator.java Wed Oct 8 21:57:18 2008
@@ -18,15 +18,6 @@
*/
package org.apache.maven.continuum.reports.surefire;
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.LinkedList;
-import java.util.List;
-
-import javax.xml.parsers.ParserConfigurationException;
-
import org.apache.maven.continuum.configuration.ConfigurationException;
import org.apache.maven.continuum.configuration.ConfigurationService;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
@@ -34,31 +25,37 @@
import org.codehaus.plexus.util.DirectoryScanner;
import org.xml.sax.SAXException;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.LinkedList;
+import java.util.List;
+
/**
* @author <a href="mailto:olamy@apache.org">olamy</a>
- * @since 12 nov. 07
* @version $Id$
- *
- * @plexus.component
- * role="org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator" role-hint="default"
+ * @plexus.component role="org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator" role-hint="default"
+ * @since 12 nov. 07
*/
public class DefaultReportTestSuiteGenerator
implements ReportTestSuiteGenerator, Initializable
{
-
+
/**
* @plexus.requirement
*/
private ConfigurationService configurationService;
private List<String> defaultIncludes;
-
+
private List<String> defaultexcludes;
// -----------------------------
// Plexus Lifecycle
// -----------------------------
-
+
public void initialize()
throws InitializationException
{
@@ -68,7 +65,7 @@
defaultexcludes.add( "*.txt" );
}
- /**
+ /**
* @see org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator#generateReports(java.io.File, java.util.List, java.util.List)
*/
public List<ReportTestSuite> generateReports( File directory, List<String> includes, List<String> excludes )
@@ -83,7 +80,7 @@
return Collections.EMPTY_LIST;
}
List<ReportTestSuite> reportTestSuites = new LinkedList<ReportTestSuite>();
- String[] includesArray = null;
+ String[] includesArray;
if ( includes == null )
{
includesArray = new String[0];
@@ -92,7 +89,7 @@
{
includesArray = includes.toArray( new String[includes.size()] );
}
- String[] excludesArray = null;
+ String[] excludesArray;
if ( excludes == null )
{
excludesArray = new String[0];
@@ -103,20 +100,18 @@
}
String[] xmlReportFiles = getIncludedFiles( directory, includesArray, excludesArray );
- if (xmlReportFiles == null )
+ if ( xmlReportFiles == null )
{
return Collections.EMPTY_LIST;
}
- if (xmlReportFiles.length == 0)
+ if ( xmlReportFiles.length == 0 )
{
return Collections.EMPTY_LIST;
}
- for ( int index = 0; index < xmlReportFiles.length; index++ )
+ for ( String currentReport : xmlReportFiles )
{
ReportTestSuite testSuite = new ReportTestSuite();
- String currentReport = xmlReportFiles[index];
-
try
{
testSuite.parse( directory + File.separator + currentReport );
@@ -139,7 +134,7 @@
return reportTestSuites;
}
- /**
+ /**
* @see org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator#generateReports(java.io.File)
*/
public List<ReportTestSuite> generateReports( File directory )
@@ -147,10 +142,8 @@
{
return generateReports( directory, defaultIncludes, defaultexcludes );
}
-
-
- /**
+ /**
* @see org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator#generateReports(int, int)
*/
public List<ReportTestSuite> generateReports( int buildId, int projectId )
@@ -166,16 +159,16 @@
throw new ReportTestSuiteGeneratorException( e.getMessage(), e );
}
}
-
- /**
- * @see org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator#generateTestResult(int, int)
+
+ /**
+ * @see org.apache.maven.continuum.reports.surefire.ReportTestSuiteGenerator#generateReportTestResult(int, int)
*/
public ReportTestResult generateReportTestResult( int buildId, int projectId )
throws ReportTestSuiteGeneratorException
{
List<ReportTestSuite> reportTestSuites = generateReports( buildId, projectId );
ReportTestResult reportTestResult = new ReportTestResult();
- for (ReportTestSuite reportTestSuite : reportTestSuites)
+ for ( ReportTestSuite reportTestSuite : reportTestSuites )
{
reportTestResult.addReportTestSuite( reportTestSuite );
}
@@ -196,5 +189,5 @@
return scanner.getIncludedFiles();
}
-
+
}
Modified: continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestResult.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestResult.java?rev=703056&r1=703055&r2=703056&view=diff
==============================================================================
--- continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestResult.java (original)
+++ continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestResult.java Wed Oct 8 21:57:18 2008
@@ -23,32 +23,35 @@
/**
* @author <a href="mailto:olamy@apache.org">olamy</a>
- * @since 13 nov. 07
* @version $Id$
+ * @since 13 nov. 07
*/
public class ReportTestResult
{
private int testCount = 0;
-
+
private int failureCount = 0;
-
+
+ private int errorCount = 0;
+
private float totalTime = 0;
-
+
private List<ReportTestSuite> suiteResults;
- public void addReportTestSuite(ReportTestSuite reportTestSuite)
+ public void addReportTestSuite( ReportTestSuite reportTestSuite )
{
- if (this.suiteResults == null)
+ if ( this.suiteResults == null )
{
this.suiteResults = new LinkedList<ReportTestSuite>();
}
this.suiteResults.add( reportTestSuite );
- this.testCount = this.testCount + reportTestSuite.getNumberOfTests();
- this.failureCount = this.failureCount + reportTestSuite.getNumberOfFailures();
- this.totalTime = this.totalTime + reportTestSuite.getTimeElapsed();
+ this.testCount += reportTestSuite.getNumberOfTests();
+ this.failureCount += reportTestSuite.getNumberOfFailures();
+ this.errorCount += reportTestSuite.getNumberOfErrors();
+ this.totalTime += reportTestSuite.getTimeElapsed();
}
-
+
public int getTestCount()
{
@@ -70,6 +73,16 @@
this.failureCount = failureCount;
}
+ public int getErrorCount()
+ {
+ return errorCount;
+ }
+
+ public void setErrorCount( int errorCount )
+ {
+ this.errorCount = errorCount;
+ }
+
public List<ReportTestSuite> getSuiteResults()
{
return suiteResults;
@@ -79,7 +92,7 @@
{
this.suiteResults = suiteResults;
}
-
+
public float getTotalTime()
{
return totalTime;
@@ -88,6 +101,6 @@
public void setTotalTime( float totalTime )
{
this.totalTime = totalTime;
- }
-
+ }
+
}
Modified: continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestSuite.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestSuite.java?rev=703056&r1=703055&r2=703056&view=diff
==============================================================================
--- continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestSuite.java (original)
+++ continuum/branches/continuum-1.2.x/continuum-reports/src/main/java/org/apache/maven/continuum/reports/surefire/ReportTestSuite.java Wed Oct 8 21:57:18 2008
@@ -18,6 +18,13 @@
*/
package org.apache.maven.continuum.reports.surefire;
+import org.xml.sax.Attributes;
+import org.xml.sax.SAXException;
+import org.xml.sax.helpers.DefaultHandler;
+
+import javax.xml.parsers.ParserConfigurationException;
+import javax.xml.parsers.SAXParser;
+import javax.xml.parsers.SAXParserFactory;
import java.io.File;
import java.io.IOException;
import java.text.NumberFormat;
@@ -26,18 +33,10 @@
import java.util.LinkedList;
import java.util.List;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.xml.sax.Attributes;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
/**
* @author <a href="mailto:olamy@apache.org">olamy</a>
- * @since 12 nov. 07
* @version $Id$
+ * @since 12 nov. 07
*/
public class ReportTestSuite
extends DefaultHandler
@@ -66,7 +65,7 @@
private StringBuffer currentElement;
private ReportTestCase testCase;
-
+
private List<ReportFailure> reportFailures;
@@ -178,12 +177,14 @@
else if ( "failure".equals( qName ) )
{
testCase.setFailureDetails( currentElement.toString() );
- this.addReportFailure( new ReportFailure( testCase.getFailureType(), testCase.getFailureDetails(), testCase.getName() ) );
+ this.addReportFailure(
+ new ReportFailure( testCase.getFailureType(), testCase.getFailureDetails(), testCase.getName() ) );
}
else if ( "error".equals( qName ) )
{
- this.addReportFailure( new ReportFailure( testCase.getFailureType(), testCase.getFailureDetails(), testCase.getName() ) );
testCase.setFailureDetails( currentElement.toString() );
+ this.addReportFailure(
+ new ReportFailure( testCase.getFailureType(), testCase.getFailureDetails(), testCase.getName() ) );
}
}
@@ -305,8 +306,8 @@
{
this.testCases = Collections.unmodifiableList( testCases );
}
-
- @SuppressWarnings ("unchecked")
+
+ @SuppressWarnings("unchecked")
public List<ReportFailure> getReportFailures()
{
return reportFailures == null ? Collections.EMPTY_LIST : reportFailures;
Modified: continuum/branches/continuum-1.2.x/continuum-reports/src/test/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGeneratorTest.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-1.2.x/continuum-reports/src/test/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGeneratorTest.java?rev=703056&r1=703055&r2=703056&view=diff
==============================================================================
--- continuum/branches/continuum-1.2.x/continuum-reports/src/test/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGeneratorTest.java (original)
+++ continuum/branches/continuum-1.2.x/continuum-reports/src/test/java/org/apache/maven/continuum/reports/surefire/DefaultReportTestSuiteGeneratorTest.java Wed Oct 8 21:57:18 2008
@@ -18,15 +18,15 @@
*/
package org.apache.maven.continuum.reports.surefire;
+import org.codehaus.plexus.spring.PlexusInSpringTestCase;
+
import java.io.File;
import java.util.List;
-import org.codehaus.plexus.spring.PlexusInSpringTestCase;
-
/**
* @author <a href="mailto:olamy@apache.org">olamy</a>
- * @since 12 nov. 07
* @version $Id$
+ * @since 12 nov. 07
*/
public class DefaultReportTestSuiteGeneratorTest
extends PlexusInSpringTestCase
@@ -34,8 +34,8 @@
private File getReportsDirectory( String pathDir )
{
- return new File( getBasedir() + File.separatorChar + "src" + File.separatorChar + "test" + File.separatorChar
- + "resources" + File.separatorChar + pathDir );
+ return new File( getBasedir() + File.separatorChar + "src" + File.separatorChar + "test" + File.separatorChar +
+ "resources" + File.separatorChar + pathDir );
}
public void testSimpleFile()
@@ -43,8 +43,8 @@
{
File testDirectory = getReportsDirectory( "simplereport" );
- ReportTestSuiteGenerator generator = (ReportTestSuiteGenerator) lookup( ReportTestSuiteGenerator.class,
- "default" );
+ ReportTestSuiteGenerator generator =
+ (ReportTestSuiteGenerator) lookup( ReportTestSuiteGenerator.class, "default" );
List<ReportTestSuite> reports = generator.generateReports( testDirectory );
assertEquals( 1, reports.size() );
@@ -59,16 +59,16 @@
public void testContinuumCore()
throws Exception
{
- ReportTestSuiteGenerator generator = (ReportTestSuiteGenerator) lookup( ReportTestSuiteGenerator.class,
- "default" );
+ ReportTestSuiteGenerator generator =
+ (ReportTestSuiteGenerator) lookup( ReportTestSuiteGenerator.class, "default" );
List<ReportTestSuite> reports = generator.generateReports( 1, 1 );
assertEquals( 18, reports.size() );
for ( ReportTestSuite report : reports )
{
- if ( report.getName().equals( "MailContinuumNotifierTest" )
- && report.getPackageName().equals( "org.apache.maven.continuum.notification.mail" ) )
+ if ( report.getName().equals( "MailContinuumNotifierTest" ) &&
+ report.getPackageName().equals( "org.apache.maven.continuum.notification.mail" ) )
{
assertEquals( 1, report.getNumberOfFailures() );
// don't test this because can plate forme dependant
@@ -88,15 +88,16 @@
}
}
-
+
public void testgenerateReportTestResult()
- throws Exception
+ throws Exception
{
- ReportTestSuiteGenerator generator = (ReportTestSuiteGenerator) lookup( ReportTestSuiteGenerator.class,
- "default" );
+ ReportTestSuiteGenerator generator =
+ (ReportTestSuiteGenerator) lookup( ReportTestSuiteGenerator.class, "default" );
ReportTestResult reportTestResult = generator.generateReportTestResult( 1, 1 );
assertEquals( 18, reportTestResult.getSuiteResults().size() );
assertEquals( 1, reportTestResult.getFailureCount() );
- assertEquals( 61, reportTestResult.getTestCount() );
+ assertEquals( 62, reportTestResult.getTestCount() );
+ assertEquals( 1, reportTestResult.getErrorCount() );
}
}
Modified: continuum/branches/continuum-1.2.x/continuum-reports/src/test/resources/continuum-core/TEST-org.apache.maven.continuum.scm.ContinuumScmTest.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-1.2.x/continuum-reports/src/test/resources/continuum-core/TEST-org.apache.maven.continuum.scm.ContinuumScmTest.xml?rev=703056&r1=703055&r2=703056&view=diff
==============================================================================
--- continuum/branches/continuum-1.2.x/continuum-reports/src/test/resources/continuum-core/TEST-org.apache.maven.continuum.scm.ContinuumScmTest.xml (original)
+++ continuum/branches/continuum-1.2.x/continuum-reports/src/test/resources/continuum-core/TEST-org.apache.maven.continuum.scm.ContinuumScmTest.xml Wed Oct 8 21:57:18 2008
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<testsuite errors="0" skipped="0" tests="1" time="2.016" failures="0" name="org.apache.maven.continuum.scm.ContinuumScmTest">
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite errors="1" skipped="0" tests="2" time="2.016" failures="0" name="org.apache.maven.continuum.scm.ContinuumScmTest">
<properties>
<property value="sa" name="javax.jdo.option.ConnectionUserName"/>
<property value="Java(TM) 2 Runtime Environment, Standard Edition" name="java.runtime.name"/>
@@ -21,7 +21,7 @@
<property value="c:\jdk1.5.0_08\jre\lib\endorsed" name="java.endorsed.dirs"/>
<property value="x86" name="os.arch"/>
<property value="c:\DOCUME~1\olamy\LOCALS~1\Temp\" name="java.io.tmpdir"/>
- <property value="
+ <property value="
" name="line.separator"/>
<property value="Sun Microsystems Inc." name="java.vm.specification.vendor"/>
<property value="" name="user.variant"/>
@@ -67,4 +67,5 @@
<property value="pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86" name="sun.cpu.isalist"/>
</properties>
<testcase time="2" name="testBasic"/>
+ <testcase time="2" name="testBasic2"/>
</testsuite>
\ No newline at end of file