0
我有其產生的流媒體下載資源的方法:我想單元測試這與模擬服務對象如何使用澤西/ dropwizard單元測試流式下載?
@GET
@Path("/{assetId}")
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response download(@PathParam("assetId") String assetId) {
StreamingOutput stream = os -> service.download(assetId, os);
return Response.ok(stream).build();
}
。我已經有:
private static AssetsService service = Mockito.mock(AssetsService.class);
@ClassRule
public final static ResourceTestRule resource = ResourceTestRule.builder()
.addResource(new AssetsResource(service))
.addProvider(MultiPartFeature.class)
.build();
@Test
public void testDownload() {
reset(service);
// how to get an output stream from this?
resource.client().target("/assets/123").request().get();
}
根據我在測試中的評論,我需要做什麼才能從響應中獲得輸出流?我發現球衣客戶端API很混亂。
一旦我有了這個,我會存根服務調用,以便它寫一個已知的文件,並測試它是否正確接收。