okhttp3.mockwebserver.MockResponse.setBody()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(10.9k)|赞(0)|评价(0)|浏览(135)

本文整理了Java中okhttp3.mockwebserver.MockResponse.setBody()方法的一些代码示例,展示了MockResponse.setBody()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。MockResponse.setBody()方法的具体详情如下:
包路径:okhttp3.mockwebserver.MockResponse
类名称:MockResponse
方法名:setBody

MockResponse.setBody介绍

[英]Sets the response body to the UTF-8 encoded bytes of body.
[中]将响应正文设置为正文的UTF-8编码字节。

代码示例

代码示例来源:origin: square/okhttp

@Override public void setBody(
   MockResponse mockResponse, DuplexResponseBody duplexResponseBody) {
  mockResponse.setBody(duplexResponseBody);
 }
};

代码示例来源:origin: square/okhttp

/** Sets the response body to the UTF-8 encoded bytes of {@code body}. */
public MockResponse setBody(String body) {
 return setBody(new Buffer().writeUtf8(body));
}

代码示例来源:origin: square/okhttp

private MockResponse directoryToResponse(String basePath, File directory) {
 if (!basePath.endsWith("/")) basePath += "/";
 StringBuilder response = new StringBuilder();
 response.append(String.format("<html><head><title>%s</title></head><body>", basePath));
 response.append(String.format("<h1>%s</h1>", basePath));
 for (String file : directory.list()) {
  response.append(String.format("<div class='file'><a href='%s'>%s</a></div>",
    basePath + file, file));
 }
 response.append("</body></html>");
 return new MockResponse()
   .setStatus("HTTP/1.1 200")
   .addHeader("content-type: text/html; charset=utf-8")
   .setBody(response.toString());
}

代码示例来源:origin: square/retrofit

public static void main(String... args) throws IOException {
  MockWebServer server = new MockWebServer();
  server.start();
  server.enqueue(new MockResponse().setBody("{\"name\": \"Jason\"}"));
  server.enqueue(new MockResponse().setBody("<user name=\"Eximel\"/>"));

  Retrofit retrofit = new Retrofit.Builder()
    .baseUrl(server.url("/"))
    .addConverterFactory(new QualifiedTypeConverterFactory(
      GsonConverterFactory.create(),
      SimpleXmlConverterFactory.create()))
    .build();
  Service service = retrofit.create(Service.class);

  User user1 = service.exampleJson().execute().body();
  System.out.println("User 1: " + user1.name);

  User user2 = service.exampleXml().execute().body();
  System.out.println("User 2: " + user2.name);

  server.shutdown();
 }
}

代码示例来源:origin: square/okhttp

private MockResponse fileToResponse(String path, File file) throws IOException {
 return new MockResponse()
   .setStatus("HTTP/1.1 200")
   .setBody(fileToBytes(file))
   .addHeader("content-type: " + contentType(path));
}

代码示例来源:origin: bumptech/glide

@Test
public void testReturnsInputStreamOnStatusOk() throws Exception {
 String expected = "fakedata";
 mockWebServer.enqueue(new MockResponse().setBody(expected).setResponseCode(200));
 DataFetcher<InputStream> fetcher = getFetcher();
 fetcher.loadData(Priority.HIGH, callback);
 waitForResponseLatch.await();
 verify(callback).onDataReady(streamCaptor.capture());
 assertStreamOf(expected, streamCaptor.getValue());
}

代码示例来源:origin: bumptech/glide

@Test
public void testReturnsInputStreamOnStatusOk() throws Exception {
 String expected = "fakedata";
 mockWebServer.enqueue(new MockResponse().setBody(expected).setResponseCode(200));
 HttpUrlFetcher fetcher = getFetcher();
 fetcher.loadData(Priority.HIGH, callback);
 verify(callback).onDataReady(streamCaptor.capture());
 TestUtil.assertStreamOf(expected, streamCaptor.getValue());
 assertThat(mockWebServer.takeRequest().getMethod()).isEqualTo("GET");
}

代码示例来源:origin: bumptech/glide

@Test
public void testHandlesRedirect302s() throws Exception {
 String expected = "fakedata";
 mockWebServer.enqueue(new MockResponse().setResponseCode(302)
   .setHeader("Location", mockWebServer.url("/redirect").toString()));
 mockWebServer.enqueue(new MockResponse().setResponseCode(200).setBody(expected));
 getFetcher().loadData(Priority.LOW, callback);
 waitForResponseLatch.await();
 verify(callback).onDataReady(streamCaptor.capture());
 assertStreamOf(expected, streamCaptor.getValue());
}

代码示例来源:origin: bumptech/glide

@Test
public void testHandlesRedirect301s() throws Exception {
 String expected = "fakedata";
 mockWebServer.enqueue(new MockResponse().setResponseCode(301)
   .setHeader("Location", mockWebServer.url("/redirect").toString()));
 mockWebServer.enqueue(new MockResponse().setResponseCode(200).setBody(expected));
 getFetcher().loadData(Priority.LOW, callback);
 waitForResponseLatch.await();
 verify(callback).onDataReady(streamCaptor.capture());
 assertStreamOf(expected, streamCaptor.getValue());
}

代码示例来源:origin: bumptech/glide

@Test
public void testCallsLoadFailedIfStatusCodeIs400() throws Exception {
 mockWebServer.enqueue(new MockResponse().setResponseCode(400).setBody("error"));
 getFetcher().loadData(Priority.LOW, callback);
 waitForResponseLatch.await();
 verify(callback).onLoadFailed(isA(VolleyError.class));
}

代码示例来源:origin: bumptech/glide

@Test
public void testCallsLoadFailedIfStatusCodeIs500() throws Exception {
 mockWebServer.enqueue(new MockResponse().setResponseCode(500).setBody("error"));
 getFetcher().loadData(Priority.NORMAL, callback);
 waitForResponseLatch.await();
 verify(callback).onLoadFailed(isA(VolleyError.class));
}

代码示例来源:origin: spring-projects/spring-framework

private MockResponse getRequest(RecordedRequest request, byte[] body, String contentType) {
  if (request.getMethod().equals("OPTIONS")) {
    return new MockResponse().setResponseCode(200).setHeader("Allow", "GET, OPTIONS, HEAD, TRACE");
  }
  Buffer buf = new Buffer();
  buf.write(body);
  MockResponse response = new MockResponse()
      .setHeader("Content-Length", body.length)
      .setBody(buf)
      .setResponseCode(200);
  if (contentType != null) {
    response = response.setHeader("Content-Type", contentType);
  }
  return response;
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void shouldReceiveEmptyResponse() {
  prepareResponse(response -> response.setHeader("Content-Length", "0").setBody(""));
  Mono<ResponseEntity<Void>> result = this.webClient.get()
      .uri("/noContent")
      .exchange()
      .flatMap(response -> response.toEntity(Void.class));
  StepVerifier.create(result).assertNext(r -> {
    assertTrue(r.getStatusCode().is2xxSuccessful());
  }).verifyComplete();
}

代码示例来源:origin: bumptech/glide

@Test
public void testHandlesRedirect301s() throws Exception {
 String expected = "fakedata";
 mockWebServer.enqueue(new MockResponse().setResponseCode(301)
   .setHeader("Location", mockWebServer.url("/redirect").toString()));
 mockWebServer.enqueue(new MockResponse().setResponseCode(200).setBody(expected));
 getFetcher().loadData(Priority.LOW, callback);
 verify(callback).onDataReady(streamCaptor.capture());
 TestUtil.assertStreamOf(expected, streamCaptor.getValue());
 assertThat(mockWebServer.takeRequest().getMethod()).isEqualTo("GET");
 assertThat(mockWebServer.takeRequest().getMethod()).isEqualTo("GET");
}

代码示例来源:origin: bumptech/glide

@Test
public void testHandlesRedirect302s() throws Exception {
 String expected = "fakedata";
 mockWebServer.enqueue(new MockResponse().setResponseCode(302)
   .setHeader("Location", mockWebServer.url("/redirect").toString()));
 mockWebServer.enqueue(new MockResponse().setResponseCode(200).setBody(expected));
 getFetcher().loadData(Priority.LOW, callback);
 verify(callback).onDataReady(streamCaptor.capture());
 TestUtil.assertStreamOf(expected, streamCaptor.getValue());
 assertThat(mockWebServer.takeRequest().getMethod()).isEqualTo("GET");
 assertThat(mockWebServer.takeRequest().getMethod()).isEqualTo("GET");
}

代码示例来源:origin: spring-projects/spring-framework

private MockResponse jsonPostRequest(RecordedRequest request, String location, String contentType) {
  if (request.getBodySize() > 0) {
    assertTrue("Invalid request content-length",
        Integer.parseInt(request.getHeader("Content-Length")) > 0);
    assertNotNull("No content-type", request.getHeader("Content-Type"));
  }
  return new MockResponse()
      .setHeader("Location", baseUrl + location)
      .setHeader("Content-Type", contentType)
      .setHeader("Content-Length", request.getBody().size())
      .setBody(request.getBody())
      .setResponseCode(201);
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void shouldReceiveNotFoundEntity() {
  prepareResponse(response -> response.setResponseCode(404)
      .setHeader("Content-Type", "text/plain").setBody("Not Found"));
  Mono<ResponseEntity<String>> result = this.webClient.get()
      .uri("/greeting?name=Spring")
      .exchange()
      .flatMap(response -> response.toEntity(String.class));
  StepVerifier.create(result)
      .consumeNextWith(response -> assertEquals(HttpStatus.NOT_FOUND, response.getStatusCode()))
      .expectComplete()
      .verify(Duration.ofSeconds(3));
  expectRequestCount(1);
  expectRequest(request -> {
    assertEquals("*/*", request.getHeader(HttpHeaders.ACCEPT));
    assertEquals("/greeting?name=Spring", request.getPath());
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void shouldApplyCustomStatusHandler() {
  prepareResponse(response -> response.setResponseCode(500)
      .setHeader("Content-Type", "text/plain").setBody("Internal Server error"));
  Mono<String> result = this.webClient.get()
      .uri("/greeting?name=Spring")
      .retrieve()
      .onStatus(HttpStatus::is5xxServerError, response -> Mono.just(new MyException("500 error!")))
      .bodyToMono(String.class);
  StepVerifier.create(result)
      .expectError(MyException.class)
      .verify(Duration.ofSeconds(3));
  expectRequestCount(1);
  expectRequest(request -> {
    assertEquals("*/*", request.getHeader(HttpHeaders.ACCEPT));
    assertEquals("/greeting?name=Spring", request.getPath());
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void shouldGetErrorSignalOn404() {
  prepareResponse(response -> response.setResponseCode(404)
      .setHeader("Content-Type", "text/plain").setBody("Not Found"));
  Mono<String> result = this.webClient.get()
      .uri("/greeting?name=Spring")
      .retrieve()
      .bodyToMono(String.class);
  StepVerifier.create(result)
      .expectError(WebClientResponseException.class)
      .verify(Duration.ofSeconds(3));
  expectRequestCount(1);
  expectRequest(request -> {
    assertEquals("*/*", request.getHeader(HttpHeaders.ACCEPT));
    assertEquals("/greeting?name=Spring", request.getPath());
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void shouldReceive404Response() {
  prepareResponse(response -> response.setResponseCode(404)
      .setHeader("Content-Type", "text/plain").setBody("Not Found"));
  Mono<ClientResponse> result = this.webClient.get().uri("/greeting?name=Spring").exchange();
  StepVerifier.create(result)
      .consumeNextWith(response -> assertEquals(HttpStatus.NOT_FOUND, response.statusCode()))
      .expectComplete()
      .verify(Duration.ofSeconds(3));
  expectRequestCount(1);
  expectRequest(request -> {
    assertEquals("*/*", request.getHeader(HttpHeaders.ACCEPT));
    assertEquals("/greeting?name=Spring", request.getPath());
  });
}

相关文章