Open satorg opened 4 months ago
Most likely the culprit is CoverageMinimum
, e.g.:
https://github.com/scoverage/sbt-scoverage/blob/6143421c9f161f59ae5c6a87678dfd06db0b1dc2/src/main/scala/scoverage/CoverageMinimum.scala#L12-L26
Apparently, if the s"Branch:$metric"
metric fails, the next one won't be looked into.
Similarly, these checks also execute up to the first failing one only: https://github.com/scoverage/sbt-scoverage/blob/6143421c9f161f59ae5c6a87678dfd06db0b1dc2/src/main/scala/scoverage/CoverageMinimum.scala#L67-L73
With
coverageFailOnMinimum := true
when the plugin encounters a metric that is failing, it prints just that metric and then halts. However, if there are multiple metrics failing across the project, it requires multiple passes to be done to fix them all. It is especially troublesome in big/large/huge projects with gazillions of tests to be run to gather all the results.