+configurations {
+ cloverRuntime
+ cloverRuntime.extendsFrom cloverCompile
+}
+
+task cloverInstr() {
+ // only instrument source, we build test classes as normal
+ inputs.files files (sourceSets.main.allJava) // , fileTree(dir:"$jalviewDir/$testSourceDir", include: ["**/*.java"]))
+ outputs.dir cloverInstrDir
+
+ doFirst {
+ delete cloverInstrDir
+ def argsList = ["--initstring", "${buildDir}/clover/clover.db",
+ "-d", "${buildDir}/${cloverSourcesInstrDir}"]
+ argsList.addAll(inputs.files.files.collect({ file ->
+ file.absolutePath
+ }))
+ String[] args = argsList.toArray()
+ println("About to instrument "+args.length +" files")
+ com.atlassian.clover.CloverInstr.mainImpl(args)
+ }
+}
+
+
+task cloverReport {
+ inputs.dir "${buildDir}/clover"
+ outputs.dir "${reportsDir}/clover"
+ onlyIf {
+ file("${buildDir}/clover/clover.db").exists()
+ }
+ doFirst {
+ def argsList = ["--initstring", "${buildDir}/clover/clover.db",
+ "-o", "${reportsDir}/clover"]
+ String[] args = argsList.toArray()
+ com.atlassian.clover.reporters.html.HtmlReporter.runReport(args)
+
+ // and generate ${reportsDir}/clover/clover.xml
+ args = ["--initstring", "${buildDir}/clover/clover.db",
+ "-o", "${reportsDir}/clover/clover.xml"].toArray()
+ com.atlassian.clover.reporters.xml.XMLReporter.runReport(args)
+ }