KLog implements KLogger { @Override public synchronized void setLogPath(String logPath) throws Exception { kLogger.setLogPath(logPath); } private  KLog(); static KLog getLogger(); @Override void dispose(); @Override String getLogPath(); @Override synchronized void setLogPath(String logPath); @Override synchronized void setLevel(Level level); @Override synchronized void info(String message, Object... args); @Override synchronized void info(String message, Throwable throwable, Object... args); @Override boolean isInfoEnabled(); @Override synchronized void warn(String message, Object... args); @Override synchronized void warn(String message, Throwable throwable, Object... args); @Override boolean isWarnEnabled(); @Override synchronized void error(String message, Object... args); @Override synchronized void error(String message, Throwable throwable, Object... args); @Override boolean isErrorEnabled(); @Override synchronized void debug(String message, Object... args); @Override synchronized void debug(String message, Throwable throwable, Object... args); @Override boolean isDebugEnabled(); @Override synchronized void trace(String message, Object... args); @Override synchronized void trace(String message, Throwable throwable, Object... args); @Override boolean isTraceEnabled();  }
@Test public void testSetLogPath() throws Exception { assertNotNull(logger); File newLogFile = configureLogPath(logger); String logMsg = "Test Log Message"; logger.info(logMsg); String fileMsg = retrieveLogContents(newLogFile); assertTrue(fileMsg.contains(logMsg)); }