@Test
public void rootCauseEval() {

    final TestException ex0 = new TestException();
    Throwable throwable = new Throwable() {
        private static final long serialVersionUID = 3597694032723032281L;
        @Override
        public synchronized Throwable getCause() {
            return ex0;
        }
    };
    CompositeException ex = new CompositeException(throwable);
    assertSame(ex, ex.getRootCause(ex));
}