模拟服务器的间隔通量?

问题描述 投票:0回答:1

我尝试为服务编写测试函数,该服务使用来自另一个服务的间隔Flux,创建类似于Flux.interval(Duration.ofSeconds(1)).map( ... )

如果看到Support of MockRestServiceServer for WebClient,这正是我需要的。但是,目前建议使用OkHttp MockWebServer。我现在的问题是:如何模拟提供间隔Flux的服务器响应?

MockResponse的setBody()函数接受String和Buffer。可能缓冲是可行的方法。但是,我不知道如何将Flux转换成说InputStream左右,可以读入缓冲区。

okhttp spring-webflux project-reactor mockwebserver
1个回答
1
投票

为什么不直接使用Mockito来模拟这种反应呢?基本上,使用Mockito来模拟服务调用。

例如嘲笑一个基于id给用户的服务

//mocked response
Mono<User> monoUser = Mono.just(new User());
Mockito.when(UserService.getUserBasedOnID(id)).thenReturn(monoUser);
© www.soinside.com 2019 - 2024. All rights reserved.