10a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber/*******************************************************************************
234cd880f4e52a32b9f88ed4ea687b8f3f892395bEvgeny Mandrikov * Copyright (c) 2009, 2017 Mountainminds GmbH & Co. KG and Contributors
30a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber * All rights reserved. This program and the accompanying materials
40a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber * are made available under the terms of the Eclipse Public License v1.0
50a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber * which accompanies this distribution, and is available at
60a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber * http://www.eclipse.org/legal/epl-v10.html
70a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber *
80a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber * Contributors:
90a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber *    Evgeny Mandrikov - initial API and implementation
1091e6e6f46939b3a7191636b784c0bda33949ad49Kyle Lieber *    Kyle Lieber - implementation of CheckMojo
110a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber *
120a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber *******************************************************************************/
130a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieberimport java.io.*;
140a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieberimport org.codehaus.plexus.util.*;
150a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber
160a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle LieberString buildLog = FileUtils.fileRead( new File( basedir, "build.log" ) );
170a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieberif ( buildLog.indexOf( "Coverage checks have not been met." ) < 0 ) {
180a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber    throw new RuntimeException( "Coverage checks should not have been met." );
190a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber}
200a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber
2155fae171b754e20062fae7cdb2d5feae8ee54017Marc R. Hoffmannif ( buildLog.indexOf( "methods missed count is 1, but expected maximum is 0" ) < 0 ) {
220a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber    throw new RuntimeException( "Should have displayed insufficient code coverage messages." );
230a9b208c902b10cfe1c18a5a6b65a9188bec33c5Kyle Lieber}
24