[jboss-svn-commits] JBL Code SVN: r12566 - in labs/jbossesb/trunk/product: services and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Jun 13 19:21:56 EDT 2007


Author: kurt.stam at jboss.com
Date: 2007-06-13 19:21:56 -0400 (Wed, 13 Jun 2007)
New Revision: 12566

Modified:
   labs/jbossesb/trunk/product/core/build.xml
   labs/jbossesb/trunk/product/services/base-project-build.xml
Log:
JBESB-610 Adding emma for services code coverage

Modified: labs/jbossesb/trunk/product/core/build.xml
===================================================================
--- labs/jbossesb/trunk/product/core/build.xml	2007-06-13 22:11:50 UTC (rev 12565)
+++ labs/jbossesb/trunk/product/core/build.xml	2007-06-13 23:21:56 UTC (rev 12566)
@@ -86,7 +86,17 @@
 		        <fileset dir="${coverage.dir}" >
 					<include name="*/*.emma" />
 		        </fileset>
-				<sourcepath><dirset dir="./" includes="rosetta/src,listeners/src,services/src" /></sourcepath>					
+		        <fileset dir="services" >
+					<include name="**/*.emma" />
+		        </fileset>
+				<sourcepath><dirset dir="./" includes="
+					rosetta/src,listeners/src,services/src
+					../services/jbossesb/src/main/java,
+					../services/jbpm/src/main/java,
+					../services/jbrules/src/main/java,
+					../services/smooks/src/main/java,
+					../services/spring/src/main/java,
+				" /></sourcepath>					
 		        <txt outfile="${coverage.dir}/coverage.txt"/>
 			</report>
 	    </emma>

Modified: labs/jbossesb/trunk/product/services/base-project-build.xml
===================================================================
--- labs/jbossesb/trunk/product/services/base-project-build.xml	2007-06-13 22:11:50 UTC (rev 12565)
+++ labs/jbossesb/trunk/product/services/base-project-build.xml	2007-06-13 23:21:56 UTC (rev 12566)
@@ -21,6 +21,11 @@
 		<mkdir dir="build/classes" />
 	</target>
 	
+	<path id="emma.libs">
+		<fileset dir="${esb.product.lib.ext}" includes="emma*.jar"/>
+	</path>
+	<taskdef resource="emma_ant.properties" classpathref="emma.libs" />
+	
 	<path id="classpath">
 		<pathelement location="build/${ant.project.name}.esb" />
 		<pathelement location="build/classes" />
@@ -72,25 +77,67 @@
     	</copy>
 	</target>
     
+    <!-- ====================================================================== -->
+    <!--                             TEST                                       -->
+    <!-- ====================================================================== -->
     <target name="base.test" depends="esb">
-    	<mkdir dir="build/test/classes"/>
-    	<mkdir dir="build/test/report"/>
-    	<javac srcdir="src/test/java" destdir="build/test/classes" debug="on" >
+		<!-- Instrument the code for code coverage - using emma... -->
+		<property name="coverage.dir" value="${basedir}/build/tests/coverage" />
+    	<delete dir="${coverage.dir}" />
+	    <mkdir dir="${coverage.dir}/instr" />
+	    <emma>
+			<instr 	instrpath="build/classes" 
+					destdir="${coverage.dir}/instr" 
+					metadatafile="${coverage.dir}/coverage.emma" />
+	    </emma>        
+
+    	<mkdir dir="build/tests/classes"/>
+    	<mkdir dir="build/tests/report"/>
+    	<javac srcdir="src/test/java" destdir="build/tests/classes" debug="on" >
 			<classpath refid="classpath" />
 		</javac>
-    	<copy todir="build/test/classes" >
+    	<copy todir="build/tests/classes" >
     		<fileset dir="src/test/java" includes="**/*.xml" />
     	</copy>
-		<junit fork="yes" haltonfailure="true" haltonerror="true" showoutput="off">
-			<formatter type="plain" usefile="false" />
-			<classpath refid="classpath" />
-			<sysproperty key="log4j.configuration" value="log4j.xml" />
-			<test name="${testcase}" if="testcase" />
-			<batchtest unless="testcase" todir="build/test/report">
-				<fileset dir="build/test/classes" includes="**/*Test.class" />
-			</batchtest>
-		</junit>
+    	<echo>${basedir}</echo>
+        <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" showoutput="no" fork="true">
+            <formatter type="plain" usefile="false"/>
+            <formatter type="xml"/>
+            <batchtest todir="build/tests/report">
+                <fileset dir="src/test/java">
+                    <include name="**/*Test.java"/>
+                </fileset>
+            </batchtest>
+            <classpath>
+	    		<!-- log4j location  -->
+	            <pathelement location="test/resources"/>
+	    		<!-- using instrumented code for code coverage -->
+	            <pathelement location="${coverage.dir}/instr"/>
+	            <pathelement location="build/tests/classes/"/>
+	            <path refid="classpath" />
+            </classpath>
+			<!-- emma jvm args -->
+			<jvmarg value="-Demma.coverage.out.file=${coverage.dir}/coverage.emma" />
+			<jvmarg value="-Demma.coverage.out.merge=true" />
+        	<sysproperty key="log4j.configuration" value="log4j.xml"/>
+        </junit>
+        <junitreport>
+            <fileset dir="build/tests/report">
+                <include name="*.xml"/>
+            </fileset>
+            <report format="frames" todir="build/tests/junit"/>
+            <report format="noframes" todir="build/tests/junit"/>
+        </junitreport>
+
+    	<!-- Generate the coverage report -->
+	    <emma>
+			<report sourcepath="src/main/java" sort="+block,+name,+method,+class" metrics="method:70,block:80,line:80,class:100">
+		        <fileset dir="${coverage.dir}" >
+					<include name="*.emma" />
+		        </fileset>
+		        <html outfile="${coverage.dir}/index.html" depth="method" columns="name,line,class,method,block"/>
+			</report>
+	    </emma>
     </target>
-	
 
 </project>
\ No newline at end of file




More information about the jboss-svn-commits mailing list