S19: share workstation runner and move agent workflows to landscape
This commit is contained in:
@@ -4,7 +4,13 @@ import org.w3c.dom.Element;
|
||||
|
||||
/** Exact module-wide line gate; consumes JaCoCo XML without rounding percentages. */
|
||||
public class Coverage {
|
||||
public static void main(String[] args) throws Exception {
|
||||
/**
|
||||
* Gates a JaCoCo XML report at 80 percent module line coverage without rounding.
|
||||
*
|
||||
* @param args the report path as the sole argument
|
||||
* @throws Exception if the report cannot be read, has no line counter, or fails the coverage gate
|
||||
*/
|
||||
public static void main(final String... args) throws Exception {
|
||||
final var factory = DocumentBuilderFactory.newInstance();
|
||||
factory.setFeature("http://xml.org/sax/features/external-general-entities", false);
|
||||
factory.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
|
||||
@@ -18,8 +24,7 @@ public class Coverage {
|
||||
final long covered = Long.parseLong(counter.getAttribute("covered"));
|
||||
final long missed = Long.parseLong(counter.getAttribute("missed"));
|
||||
final long total = covered + missed;
|
||||
System.out.println(
|
||||
"Backend line coverage: " + covered + "/" + total + " (" + 100.0 * covered / total + "%)");
|
||||
IO.println("Backend line coverage: " + covered + "/" + total + " (" + 100.0 * covered / total + "%)");
|
||||
if (total == 0 || 5 * covered < 4 * total)
|
||||
throw new IllegalStateException("Backend line coverage must reach 80%: " + args[0]);
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user