]> source.dussan.org Git - poi.git/commitdiff
Coverage:
authorDominik Stadler <centic@apache.org>
Sat, 31 Dec 2016 09:43:13 +0000 (09:43 +0000)
committerDominik Stadler <centic@apache.org>
Sat, 31 Dec 2016 09:43:13 +0000 (09:43 +0000)
* Exclude "examples" from coverage in Jenkins, add some comments
* Fix warning in newer Gradle versions
* Adjust coverage-excludes in build.xml

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1776715 13f79535-47bb-0310-9956-ffa450edef68

build.gradle
build.xml
jenkins/create_jobs.groovy

index d352c79df85a6986d03d2d2b853ed9f9e2f12c3c..9432f2a0731b4cc99ce3b05e7439d8831bfe2404 100644 (file)
@@ -47,12 +47,14 @@ allprojects {
            gradleVersion = '2.14.1'
        }
        
-       task adjustWrapperPropertiesFile << {
-               ant.replaceregexp(match:'^#.*', replace:'', flags:'g', byline:true) {
-                       fileset(dir: project.projectDir, includes: 'gradle/wrapper/gradle-wrapper.properties')
+       task adjustWrapperPropertiesFile {
+               doLast {
+                       ant.replaceregexp(match:'^#.*', replace:'', flags:'g', byline:true) {
+                               fileset(dir: project.projectDir, includes: 'gradle/wrapper/gradle-wrapper.properties')
+                       }
+                       new File(project.projectDir, 'gradle/wrapper/gradle-wrapper.properties').with { it.text = it.readLines().findAll { it }.sort().join('\n') }
+                       ant.fixcrlf(file: 'gradle/wrapper/gradle-wrapper.properties', eol: 'lf')
                }
-               new File(project.projectDir, 'gradle/wrapper/gradle-wrapper.properties').with { it.text = it.readLines().findAll { it }.sort().join('\n') }
-               ant.fixcrlf(file: 'gradle/wrapper/gradle-wrapper.properties', eol: 'lf')
        }
        wrapper.finalizedBy adjustWrapperPropertiesFile
 }
index 8e0cc520525a200b92b856946b6cd641c6d93cf7..3db1de7b30ddea9b219518103a824a96852ebc0e 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -239,7 +239,7 @@ under the License.
     <!-- Coverage -->
     <property name="coverage.dir" value="build/coverage"/>
     <!-- Exclude some uninteresting classes from coverage-instrumentation as we do not want to measure coverage in those packages anyway -->
-    <property name="coverage.excludes" value="org.openxmlformats.*:com.*:org.junit.*:junit.*:org.etsi.*:org.w3.*"/>
+    <property name="coverage.excludes" value="org.openxmlformats.*:com.*:org.junit.*:junit.*:org.etsi.*:org.w3.*:org.slf4j.*:org.hamcrest.*:org.bouncycastle.*:org.apache.xmlbeans.*:org.apache.tools.*:org.apache.commons.*:org.apache.jcp.*:sun.*:schemaorg_apache_xmlbeans.*"/>
     
     <property name="file.leak.detector" value="-Dthis.is.a.dummy=true"/>
 
@@ -1209,13 +1209,8 @@ under the License.
                     <classfiles>
                         <fileset dir="${ooxml.output.dir}"/>
                         <!-- there are no actual POI classes in build/ooxml-lite-classes, only generated code...
-                        fileset dir="${ooxml.lite.output.dir}">
-                            <exclude name="org/openxmlformats/**"/>
-                            <exclude name="schema*/**"/>
-                            <exclude name="org/etsi/**"/>
-                            <exclude name="org/w3/**"/>
-                            <exclude name="com/**"/>
-                        </fileset-->
+                        <fileset dir="${ooxml.lite.output.dir}"/>
+                        -->
                     </classfiles>
                     <sourcefiles encoding="UTF-8">
                         <fileset dir="${ooxml.src}"/>
@@ -1323,7 +1318,7 @@ under the License.
     <target name="test-hssf" unless="main.hssf.test.notRequired"
             depends="compile-main, -test-main-hssf-check,jacocotask" xmlns:jacoco="antlib:org.jacoco.ant"
             description="test HSSF classes only">
-        <jacoco:coverage enabled="${coverage.enabled}" excludes="${coverage.excludes}" destfile="build/jacoco-main.exec">
+        <jacoco:coverage enabled="${coverage.enabled}" excludes="${coverage.excludes}" destfile="build/jacoco-hssf.exec">
             <junit fork="yes" forkmode="once" printsummary="yes" haltonfailure="${halt.on.test.failure}"
                    failureproperty="main.hssf.test.failed" showoutput="true">
                 <classpath refid="test.classpath"/>
@@ -1506,7 +1501,7 @@ under the License.
         <attribute name="classpath"/>
         <attribute name="type"/>
         <sequential>
-            <jacoco:coverage enabled="${coverage.enabled}" excludes="${coverage.excludes}" destfile="build/jacoco-@{type}.exec">
+            <jacoco:coverage enabled="${coverage.enabled}" excludes="${coverage.excludes}" destfile="build/jacoco-@{type}-ss.exec">
               <junit printsummary="yes" fork="yes" forkmode="once" haltonfailure="${halt.on.test.failure}"
                      failureproperty="ooxml.ss.test.failed">
                   <classpath refid="@{classpath}"/>
index 9e688e5cf0c26ac83ba221f83d114eaec03d4004..62a017ea7532f6e8686441a761362babc73b2ed0 100644 (file)
@@ -67,7 +67,7 @@ def poijobs = [
 
 def svnBase = 'https://svn.apache.org/repos/asf/poi/trunk'
 def defaultJdk = '1.6'
-def defaultTrigger = 'H/15 * * * *'
+def defaultTrigger = 'H/15 * * * *'     // check SCM every 60/15 = 4 minutes
 def defaultEmail = 'dev@poi.apache.org'
 def defaultAnt = 'Ant (latest)'
 def defaultSlaves = 'ubuntu&&!cloud-slave'
@@ -82,7 +82,6 @@ def jdkMapping = [
 ]
 
 poijobs.each { poijob ->
-    
     def jdkKey = poijob.jdk ?: defaultJdk
     def trigger = poijob.trigger ?: defaultTrigger
     def email = poijob.email ?: defaultEmail
@@ -133,6 +132,7 @@ for more details about the DSL.</b>
         environmentVariables {
             env('LANG', 'en_US.UTF-8')
             if(jdkKey == '1.9') {
+                // when using JDK 9 for running Ant, we need to provide more packages for the forbidden-api-checks task
                 env('ANT_OPTS', '--add-modules=java.xml.bind')
             }
         }
@@ -300,7 +300,7 @@ for more details about the DSL.</b>
                     }
                 }
                 jacocoCodeCoverage {
-                    classPattern('build/classes,build/examples-classes,build/excelant-classes,build/ooxml-classes,build/scratchpad-classes,build/*/build/classes')
+                    classPattern('build/classes,build/excelant-classes,build/ooxml-classes,build/scratchpad-classes,build/*/build/classes')
                     execPattern('build/*.exec,build/*/build/jacoco/*.exec')
                     sourcePattern('src/java,src/excelant/java,src/ooxml/java,src/scratchpad/src')
                     exclusionPattern('com/microsoft/**,org/openxmlformats/**,org/etsi/**,org/w3/**,schemaorg*/**,schemasMicrosoft*/**,org/apache/poi/hdf/model/hdftypes/definitions/*.class,org/apache/poi/hwpf/model/types/*.class,org/apache/poi/hssf/usermodel/DummyGraphics2d.class,org/apache/poi/sl/draw/binding/*.class')