### Question:
Slf4jJdbcLogger extends AbstractJdbcLogger<Level> { @Override protected void logSql( String callerClassName, String callerMethodName, Sql<?> sql, Level level, Supplier<String> messageSupplier) { String loggerName = LogKind.SQL.fullName() + "." + sql.getKind().name(); log(loggerName, level, callerClassName, callerMethodName, null, messageSupplier); } Slf4jJdbcLogger();  Slf4jJdbcLogger(Level level);   }### Answer:
@Test void constructor() { Slf4jJdbcLogger logger = new Slf4jJdbcLogger(Level.TRACE); String className = getClass().getName(); String methodName = "constructor"; logger.logSql(className, methodName, selectSql); List<ILoggingEvent> events = getEvents(); assertEquals(0, events.size()); }
@Test void logSql() { Slf4jJdbcLogger logger = new Slf4jJdbcLogger(); String className = getClass().getName(); String methodName = "logSql"; logger.logSql(className, methodName, selectSql); List<ILoggingEvent> events = getEvents(); assertEquals(1, events.size()); }
@Test void logSql_childLogger() { Slf4jJdbcLogger logger = new Slf4jJdbcLogger(); String className = getClass().getName(); String methodName = "logSql"; logger.logSql(className, methodName, insertSql); List<ILoggingEvent> events = getEvents(); assertEquals(0, events.size()); }
@Test void logSql_classAndMethod_null() { Slf4jJdbcLogger logger = new Slf4jJdbcLogger(); logger.logSql(null, null, selectSql); List<ILoggingEvent> events = getEvents(); assertEquals(1, events.size()); }