@@ -16,7 +16,10 @@ class ScoverageSbtPlugin extends sbt.Plugin {
16
16
val excludedPackages = SettingKey [String ](" scoverage-excluded-packages" )
17
17
val minimumCoverage = SettingKey [Double ](" scoverage-minimum-coverage" )
18
18
val failOnMinimumCoverage = SettingKey [Boolean ](" scoverage-fail-on-minimum-coverage" )
19
- val highlighting = SettingKey [Boolean ](" scoverage-highlighting" , " enables range positioning for highlighting" )
19
+ val highlighting = settingKey[Boolean ](" enables range positioning for highlighting" )
20
+ val scoverageOutputCobertua = settingKey[Boolean ](" enables cobertura XML report generation" )
21
+ val scoverageOutputXML = settingKey[Boolean ](" enables xml report generation" )
22
+ val scoverageOutputHTML = settingKey[Boolean ](" enables html report generation" )
20
23
}
21
24
22
25
import ScoverageKeys ._
@@ -43,6 +46,9 @@ class ScoverageSbtPlugin extends sbt.Plugin {
43
46
failOnMinimumCoverage := false ,
44
47
highlighting := false ,
45
48
excludedPackages in Scoverage := " " ,
49
+ scoverageOutputXML := true ,
50
+ scoverageOutputHTML := true ,
51
+ scoverageOutputCobertua := true ,
46
52
47
53
scalacOptions in Scoverage <++= (crossTarget in Compile , update, excludedPackages in Scoverage ) map {
48
54
(target, report, excluded) =>
@@ -103,18 +109,22 @@ class ScoverageSbtPlugin extends sbt.Plugin {
103
109
val measurements = IOUtils .invoked(measurementFiles)
104
110
coverage.apply(measurements)
105
111
106
- streams.value.log
107
- .info(s " [scoverage] Generating Cobertura report [ ${coberturaDir.getAbsolutePath}/cobertura.xml] " )
108
- new CoberturaXmlWriter ((baseDirectory in Compile ).value, coberturaDir).write(coverage)
109
-
110
- streams.value.log.info(s " [scoverage] Generating XML report [ ${reportDir.getAbsolutePath}/scoverage.xml] " )
111
- new ScoverageXmlWriter ((scalaSource in Compile ).value, reportDir, false ).write(coverage)
112
- new ScoverageXmlWriter ((scalaSource in Compile ).value, reportDir, true ).write(coverage)
112
+ if (scoverageOutputCobertua.value) {
113
+ streams.value.log
114
+ .info(s " [scoverage] Generating Cobertura report [ ${coberturaDir.getAbsolutePath}/cobertura.xml] " )
115
+ new CoberturaXmlWriter ((baseDirectory in Compile ).value, coberturaDir).write(coverage)
116
+ }
113
117
114
- streams.value.log.info(s " [scoverage] Generating HTML report [ ${reportDir.getAbsolutePath}/index.html] " )
115
- new ScoverageHtmlWriter ((scalaSource in Compile ).value, reportDir).write(coverage)
118
+ if (scoverageOutputXML.value) {
119
+ streams.value.log.info(s " [scoverage] Generating XML report [ ${reportDir.getAbsolutePath}/scoverage.xml] " )
120
+ new ScoverageXmlWriter ((scalaSource in Compile ).value, reportDir, false ).write(coverage)
121
+ new ScoverageXmlWriter ((scalaSource in Compile ).value, reportDir, true ).write(coverage)
122
+ }
116
123
117
- streams.value.log.info(" [scoverage] Reports completed" )
124
+ if (scoverageOutputHTML.value) {
125
+ streams.value.log.info(s " [scoverage] Generating HTML report [ ${reportDir.getAbsolutePath}/index.html] " )
126
+ new ScoverageHtmlWriter ((scalaSource in Compile ).value, reportDir).write(coverage)
127
+ }
118
128
119
129
val min = minimumCoverage.value
120
130
val failOnMin = failOnMinimumCoverage.value
0 commit comments