1*7e63c127SSorin Basca/******************************************************************************* 2*7e63c127SSorin Basca * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors 3*7e63c127SSorin Basca * This program and the accompanying materials are made available under 4*7e63c127SSorin Basca * the terms of the Eclipse Public License 2.0 which is available at 5*7e63c127SSorin Basca * http://www.eclipse.org/legal/epl-2.0 6*7e63c127SSorin Basca * 7*7e63c127SSorin Basca * SPDX-License-Identifier: EPL-2.0 8*7e63c127SSorin Basca * 9*7e63c127SSorin Basca * Contributors: 10*7e63c127SSorin Basca * Evgeny Mandrikov - initial API and implementation 11*7e63c127SSorin Basca * 12*7e63c127SSorin Basca *******************************************************************************/ 13*7e63c127SSorin Bascaimport java.io.*; 14*7e63c127SSorin Bascaimport org.codehaus.plexus.util.*; 15*7e63c127SSorin Basca 16*7e63c127SSorin BascaString buildLog = FileUtils.fileRead( new File( basedir, "build.log" ) ); 17*7e63c127SSorin Bascaif ( buildLog.indexOf( "Skipping JaCoCo execution due to missing classes directory." ) < 0 ) { 18*7e63c127SSorin Basca throw new RuntimeException( "Execution should be skipped when target/classes does not exist." ); 19*7e63c127SSorin Basca} 20*7e63c127SSorin Basca 21*7e63c127SSorin BascaFile dump2 = new File( basedir, "skip-child/target/jacoco.exec" ); 22*7e63c127SSorin Bascaif ( dump2.isFile() ) { 23*7e63c127SSorin Basca throw new RuntimeException( "Should not be executed for module 'skip-child', but dump found : " + dump2 ); 24*7e63c127SSorin Basca} 25*7e63c127SSorin Basca 26*7e63c127SSorin Bascaif ( !buildLog.contains( "argLine set to empty" ) ) { 27*7e63c127SSorin Basca throw new RuntimeException( "Property not set to empty when skipping." ); 28*7e63c127SSorin Basca} 29*7e63c127SSorin Basca 30*7e63c127SSorin BascaFile file = new File( basedir, "child/target/jacoco.exec" ); 31*7e63c127SSorin Bascaif ( !file.isFile() ) 32*7e63c127SSorin Basca{ 33*7e63c127SSorin Basca throw new FileNotFoundException( "Could not find generated dump: " + file ); 34*7e63c127SSorin Basca} 35*7e63c127SSorin Basca 36*7e63c127SSorin BascaFile xmlReport = new File( basedir, "child/target/site/jacoco/jacoco.xml" ); 37*7e63c127SSorin Bascaif ( !xmlReport.isFile() ) 38*7e63c127SSorin Basca{ 39*7e63c127SSorin Basca throw new FileNotFoundException( "Could not find generated XML report: " + xmlReport ); 40*7e63c127SSorin Basca} 41*7e63c127SSorin Basca 42*7e63c127SSorin BascaFile csvReport = new File( basedir, "child/target/site/jacoco/jacoco.csv" ); 43*7e63c127SSorin Bascaif ( !csvReport.isFile() ) 44*7e63c127SSorin Basca{ 45*7e63c127SSorin Basca throw new FileNotFoundException( "Could not find generated CSV report: " + csvReport ); 46*7e63c127SSorin Basca} 47*7e63c127SSorin Basca 48*7e63c127SSorin BascaFile htmlReport = new File( basedir, "child/target/site/jacoco/index.html" ); 49*7e63c127SSorin Bascaif ( !htmlReport.isFile() ) 50*7e63c127SSorin Basca{ 51*7e63c127SSorin Basca throw new FileNotFoundException( "Could not find generated HTML report: " + htmlReport ); 52*7e63c127SSorin Basca} 53