如何模拟返回"Mono<Void>"的方法



如何模拟返回Mono<Void>的方法?

我有这个返回Mono<Void>的方法

public Mono<Void> deleteMethod(Post post) {
        return statusRepository.delete(post);
    }

在我的测试课上,我想做这样的事情

given(statusRepository.delete(any(Post.class))).willReturn(Mono.empty());

有没有更好的方法可以做到这一点?

有人可以帮助我吗?

谢谢。

这可以使用Mockito.when

Mockito.when(statusRepository.delete(any(Post.class)).thenReturn(Mono.empty());

。调用该方法并验证...

Mockito.verify(statusRepository).delete(any(Post.class));

我也能够在不使用Mono.empty的情况下做到这一点,因此响应式链将通过创建 void 类型的模拟对象来完成。下面是一个代码示例(用 Kotlin 编写并使用 mockito-kotlin,但也应该适用于 mockito(:

val mockVoid: Void = mock()
whenever(statusRepository.delete(any(Post::class.java)).thenReturn(mockVoid)

当我不想有一个空的单声道时,我会这样做。

when(statusRepository.delete(any(Post.class))).thenReturn(Mono.just("").then());

相关内容

  • 没有找到相关文章

最新更新