@Test
void finisherFails() {

    final Consumer<String> finisher = mock(Consumer.class);
    doThrow(IllegalStateException.class).when(finisher)
        .accept(any());
    final Reloadable<String> r = Reloadable.with(() -> "")
        .finishWith(finisher)
        .async()
        .build();
    final Either<Throwable, String> result = r.get();
    assertThatThrownBy(result::get).isInstanceOf(NoSuchElementException.class); // no value as the finisher failed
}