Browse Source

SQSCANNER-47 Improve error logs when exception is a MessageException

tags/3.1.0.1141
Duarte Meneses 6 years ago
parent
commit
4d6a2243d4

+ 1
- 1
src/main/java/org/sonarsource/scanner/cli/Main.java View File

@@ -143,7 +143,7 @@ public class Main {

private static boolean showStackTrace(Throwable e, boolean debug) {
// class not available at compile time (loaded by isolated classloader)
return debug || !"org.sonar.api.utils.MessageException".equals(e.getClass().getName());
return debug && !"org.sonar.api.utils.MessageException".equals(e.getClass().getName());
}

private void suggestDebugMode() {

+ 10
- 8
src/test/java/org/sonarsource/scanner/cli/MainTest.java View File

@@ -85,7 +85,7 @@ public class MainTest {
e = new IllegalStateException("Error", e);
doThrow(e).when(runner).execute(any(Map.class));
when(scannerFactory.create(any(Properties.class))).thenReturn(runner);
when(cli.isDebugEnabled()).thenReturn(true);
Main main = new Main(exit, cli, conf, scannerFactory, logs);
main.execute();

@@ -99,6 +99,7 @@ public class MainTest {
Exception e = new NullPointerException("NPE");
e = new IllegalStateException("Error", e);
doThrow(e).when(runner).start();
when(cli.isDebugEnabled()).thenReturn(true);
when(scannerFactory.create(any(Properties.class))).thenReturn(runner);

Main main = new Main(exit, cli, conf, scannerFactory, logs);
@@ -111,22 +112,23 @@ public class MainTest {
}

@Test
public void show_error_with_stacktrace() {
Exception e = createException(false);
public void show_error_MessageException() {
Exception e = createException(true);
testException(e, false);

verify(logs).error("Error during SonarQube Scanner execution", e);
verify(logs).error("Error during SonarQube Scanner execution");
verify(logs).error("Caused by: NPE");
verify(logs).error("Re-run SonarQube Scanner using the -X switch to enable full debug logging.");
}
@Test
public void show_error_MessageException() {
public void show_error_MessageException_debug() {
Exception e = createException(true);
testException(e, false);
testException(e, true);

verify(logs).error("Error during SonarQube Scanner execution");
verify(logs).error("my message");
verify(logs).error("Caused by: NPE");
verify(logs).error("Re-run SonarQube Scanner using the -X switch to enable full debug logging.");
}

@Test

Loading…
Cancel
Save