Без понимания фактического теста. Что вы можете сделать, чтобы улучшить код, так это абстрагировать эти 10 строк кода в метод, который затем может быть вызван поставщиком.
Это позволит вам легко тестировать метод отдельно, даже не вызывая его. строка CompletableFuture.supplyAsync(...)
, используемая в коде.
Например, рассмотрим эту абстракцию
CompletableFuture.supplyAsync(() -> supplyingMyValue());
, где существует метод supplyingMyValue
, например
Value supplyingMyValue() {
// perform some logic
return new Value();
}
и теперь вы можете протестировать этот метод независимо .
Примечание : решение по-прежнему не будет проверять возможность supplyAsync
, но предоставит способ проверить толькокод вызван.