Как проверить исключение, генерируемое при помощи StepVerifier в реакторе проекта - PullRequest
0 голосов
/ 19 февраля 2020
    def expectError() {

        StepVerifier.create(readDB())
                    .expectError(RuntimeException.class)
                    .verify();
    }

     private Mono<String> readDB() {
//        try {
            return Mono.just(externalService.get())
                    .onErrorResume(throwable -> Mono.error(throwable));

//        } catch (Exception e) {
//            return Mono.error(e);
//        }
    }

не может заставить его работать, если externalService.get выдает Exception вместо возврата Mono.error. Всегда рекомендуется преобразовывать в Mono / Flow с использованием try catch или есть ли лучший способ проверить такое выброшенное исключение?

1 Ответ

1 голос
/ 19 февраля 2020

В большинстве случаев, если предоставленный пользователем код, который генерирует исключение, предоставляется как лямбда, исключения могут быть переведены в onError. Но здесь вы непосредственно добавляете основной поток, так что это не может произойти

...