如何在ABC方法中模拟RCALL方法

发布于 2025-01-28 04:05:13 字数 1345 浏览 4 评论 0原文

在此休息ABC服务中,我正在调用R System API调用,我嘲笑了FileProcessingHelper并使用何时(fileprocessinghelper.rcall.rcall(client,request))。失败了,让我知道如何测试此服务。

@Path("/abc")
@POST
@Produces(MediaType.APPLICATION_JSON)
public Response abc(final InputStream inputStream, @Context UriInfo uriInfo) throws IOException {
    var queryParams = uriInfo.getQueryParameters();

    File tempDir = fileProcessingHelper.getTempDir();
    tempDir.deleteOnExit();

    String tempFile = fileProcessingHelper.getTempFile(tempDir, inputStream);
    File tmpFile = new File(tempFile);

    okhttp3.Request requestObject = fileProcessingHelper.getRequest(queryParams, tmpFile);

    okhttp3.Response response = fileProcessingHelper
        .rCall(new OkHttpClient().newBuilder().readTimeout(2, TimeUnit.HOURS).build(), requestObject);
    isErrorArr[0] = RMTGenericConstants.SUCCESS;
    JsonObject jsonObject = fileProcessingHelper.validateResponse(response, queryParams, tempFile, inputStream,
        RMTDefaultConstants.SRA, isErrorArr);

    return Response.status(Response.Status.OK).header("flag", isErrorArr[0]).entity(jsonObject.toString()).build();
}

public okhttp3.Response rCall(OkHttpClient client, Request requestObject) throws IOException {
    return client.newCall(requestObject).execute();
}

in this rest abc service I am calling r system api call I have mocked fileProcessingHelper and used when(fileProcessingHelper.rCall(client, request)).thenReturn(response); then I am calling abc service but it is failing let me know how I can test this service.

@Path("/abc")
@POST
@Produces(MediaType.APPLICATION_JSON)
public Response abc(final InputStream inputStream, @Context UriInfo uriInfo) throws IOException {
    var queryParams = uriInfo.getQueryParameters();

    File tempDir = fileProcessingHelper.getTempDir();
    tempDir.deleteOnExit();

    String tempFile = fileProcessingHelper.getTempFile(tempDir, inputStream);
    File tmpFile = new File(tempFile);

    okhttp3.Request requestObject = fileProcessingHelper.getRequest(queryParams, tmpFile);

    okhttp3.Response response = fileProcessingHelper
        .rCall(new OkHttpClient().newBuilder().readTimeout(2, TimeUnit.HOURS).build(), requestObject);
    isErrorArr[0] = RMTGenericConstants.SUCCESS;
    JsonObject jsonObject = fileProcessingHelper.validateResponse(response, queryParams, tempFile, inputStream,
        RMTDefaultConstants.SRA, isErrorArr);

    return Response.status(Response.Status.OK).header("flag", isErrorArr[0]).entity(jsonObject.toString()).build();
}

public okhttp3.Response rCall(OkHttpClient client, Request requestObject) throws IOException {
    return client.newCall(requestObject).execute();
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文