olamy commented on pull request #478: URL: https://github.com/apache/maven-surefire/pull/478#issuecomment-1054680670
> You added one more branching and you call `throwException`. > > Why? > > It has to end up with the only one exception - `BUILD ERROR` with no other decision making. > > So it is like this: > > ``` > if ( isBooterError( firstForkException ) ) > { > throwBuildError( reportParameters, result, firstForkException ); > } > else if ( reportParameters.isTestFailureIgnore() ) > { > log.error( createErrorMessage( reportParameters, result, firstForkException ) ); > } > else > { > throwException( reportParameters, result, firstForkException ); // here is further decision making only! > } > > private static void throwBuildFailure( SurefireReportParameters reportParameters, RunResult result, Exception firstForkException ) > { > throw new MojoFailureException( createErrorMessage( reportParameters, result, firstForkException ), firstForkException ); > } > > private static void throwBuildError( SurefireReportParameters reportParameters, RunResult result, Exception firstForkException ) > { > throw new MojoExecutionException( createErrorMessage( reportParameters, result, firstForkException ), firstForkException ); > } > > private static void throwException( SurefireReportParameters reportParameters, RunResult result, > Exception firstForkException ) > throws MojoFailureException, MojoExecutionException > { > if ( isFatal( firstForkException ) || result.isInternalError() ) > { > throwBuildError( createErrorMessage( reportParameters, result, firstForkException, firstForkException ); > } > else > { > throwBuildFailure( createErrorMessage( reportParameters, result, firstForkException, firstForkException ); > } > } > > private static boolean isBooterError( Exception firstForkException ) > { > return firstForkException instanceof SurefireBooterForkException; > } > ``` frankly I find your proposal adding a lot more complexity (~40 lines of code) for no much gain. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org