CompositeTraceAppender implements TraceAppender { public TraceAppender getAppender(String logName) { return traceAppenders.get(logName); }  TraceAppender getAppender(String logName); void putAppender(String logName, TraceAppender traceAppender); @Override void flush(); @Override void append(String log); @Override void cleanup();  }
@Test public void getAppender() { TraceAppender compositeTimedRollingFileAppender = compositeTraceAppender .getAppender("timedRollingFileAppender"); TraceAppender compositeMockTracerAppender = compositeTraceAppender .getAppender("mockTracerAppender"); Assert.assertEquals(compositeTimedRollingFileAppender.hashCode(), timedRollingFileAppender.hashCode()); Assert.assertEquals(compositeMockTracerAppender.hashCode(), mockTracerAppender.hashCode()); }