@Test public void convertsThrowableProxyMessageToExceptionMessage() { // given final ILoggingEvent loggingEvent = createLoggingEvent().with(createThrowableProxy().withMessage("someMessage")); // when final NotificationVO notification = converter.convertToNotification(loggingEvent); final EventVO event = notification.getEvents().get(0); final ExceptionVO exception = event.getExceptions().get(0); // then assertThat(exception.getMessage(), is("someMessage")); }
@Test public void convertsStackTraceElementProxyClassNameAndMethodNameToStackTraceMethod() { // given final ILoggingEvent loggingEvent = createLoggingEvent() .with( createThrowableProxy() .addStackTraceElementProxy( createStackTraceElement() .withDeclaringClass("com.some.package.SomeClassName") .withMethodName("someMethodName"))); // when final NotificationVO notification = converter.convertToNotification(loggingEvent); final EventVO event = notification.getEvents().get(0); final ExceptionVO exception = event.getExceptions().get(0); final StackTraceVO stackTrace = exception.getStackTrace().get(0); // then assertThat(stackTrace.getMethod(), is("com.some.package.SomeClassName.someMethodName")); }
@Test public void setsStackTraceAsNotInProjectWhenStackTraceElementClassNameIsMarkedAsSuch() { // given final ILoggingEvent loggingEvent = createLoggingEvent() .with( createThrowableProxy() .addStackTraceElementProxy( createStackTraceElement() .withDeclaringClass("com.some.package.SomeClassName") .withMethodName("someMethodName") .withFileName("SomeFileName"))); // when final NotificationVO notification = converter.convertToNotification(loggingEvent); final EventVO event = notification.getEvents().get(0); final ExceptionVO exception = event.getExceptions().get(0); final StackTraceVO stackTrace = exception.getStackTrace().get(0); // then assertThat(stackTrace.isInProject(), is(Boolean.FALSE)); }