public static <T extends Throwable> void checkNotEmpty(final String value, final Supplier<T> exceptionSupplierIfUnexpected) throws T {
        if (Strings.isNullOrEmpty(value)) {
            throw exceptionSupplierIfUnexpected.get();
        }
    }
@Test
    void assertCheckNotEmptyWithStringToThrowsException() {
        assertThrows(SQLException.class, () -> ShardingSpherePreconditions.checkNotEmpty((String) null, SQLException::new));
        assertThrows(SQLException.class, () -> ShardingSpherePreconditions.checkNotEmpty("", SQLException::new));
    }