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

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

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

MockResponse.setHeader介绍

[英]Removes all headers named name, then adds a new header with the name and value.
[中]删除所有名为name的标题,然后添加一个包含名称和值的新标题。

代码示例

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

/**
 * Attempts to perform a web socket upgrade on the connection. This will overwrite any previously
 * set status or body.
 */
public MockResponse withWebSocketUpgrade(WebSocketListener listener) {
 setStatus("HTTP/1.1 101 Switching Protocols");
 setHeader("Connection", "Upgrade");
 setHeader("Upgrade", "websocket");
 body = null;
 webSocketListener = listener;
 return this;
}

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

/** Creates a new mock response with an empty body. */
public MockResponse() {
 setResponseCode(200);
 setHeader("Content-Length", 0);
}

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

public MockResponse setBody(Buffer body) {
 setHeader("Content-Length", body.size());
 this.body = body.clone(); // Defensive copy.
 return this;
}

代码示例来源: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

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: bumptech/glide

@Test
public void testFailsOnRedirectLoops() throws Exception {
 mockWebServer.enqueue(new MockResponse().setResponseCode(301)
   .setHeader("Location", mockWebServer.url("/redirect").toString()));
 mockWebServer.enqueue(new MockResponse().setResponseCode(301)
   .setHeader("Location", mockWebServer.url("/redirect").toString()));
 getFetcher().loadData(Priority.IMMEDIATE, callback);
 verify(callback).onLoadFailed(isA(IOException.class));
}

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

@Test
public void testCallsLoadFailedAfterTooManyRedirects() throws Exception {
 for (int i = 0; i < 20; i++) {
  mockWebServer.enqueue(new MockResponse().setResponseCode(301)
    .setHeader("Location", mockWebServer.url("/redirect" + i).toString()));
 }
 getFetcher().loadData(Priority.NORMAL, callback);
 waitForResponseLatch.await();
 verify(callback).onLoadFailed(isA(VolleyError.class));
}

代码示例来源: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 testFailsAfterTooManyRedirects() throws Exception {
 for (int i = 0; i < 10; i++) {
  mockWebServer.enqueue(new MockResponse().setResponseCode(301)
    .setHeader("Location", mockWebServer.url("/redirect" + i).toString()));
 }
 getFetcher().loadData(Priority.NORMAL, callback);
 verify(callback).onLoadFailed(isA(IOException.class));
}

代码示例来源: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: 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: 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 testFailsIfRedirectLocationIsPresentAndEmpty() throws Exception {
 mockWebServer.enqueue(new MockResponse().setResponseCode(301).setHeader("Location", ""));
 getFetcher().loadData(Priority.NORMAL, callback);
 verify(callback).onLoadFailed(isA(IOException.class));
}

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

@Test
public void bodyToMonoVoid() {
  this.server.enqueue(new MockResponse()
      .setResponseCode(201)
      .setHeader("Content-Type", "application/json")
      .setChunkedBody("{\"foo\" : {\"bar\" : \"123\", \"baz\" : \"456\"}}", 5));
  Mono<Void> mono = this.webClient.get()
      .uri("/json").accept(MediaType.APPLICATION_JSON)
      .retrieve()
      .bodyToMono(Void.class);
  StepVerifier.create(mono).expectComplete().verify(Duration.ofSeconds(3));
  assertEquals(1, this.server.getRequestCount());
}

代码示例来源: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  // SPR-15946
public void shouldGetErrorSignalOnEmptyErrorResponse() {
  prepareResponse(response -> response.setResponseCode(404)
      .setHeader("Content-Type", "text/plain"));
  Mono<String> result = this.webClient.get().uri("/greeting")
      .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", request.getPath());
  });
}

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

private void testOnStatus(Throwable expected,
    Function<ClientResponse, Mono<? extends Throwable>> exceptionFunction) {
  HttpStatus errorStatus = HttpStatus.BAD_GATEWAY;
  this.server.enqueue(new MockResponse()
      .setResponseCode(errorStatus.value())
      .setHeader("Content-Type", "application/json")
      .setChunkedBody("{\"error\" : {\"status\" : 502, \"message\" : \"Bad gateway.\"}}", 5));
  Mono<String> mono = this.webClient.get()
      .uri("/json").accept(MediaType.APPLICATION_JSON)
      .retrieve()
      .onStatus(status -> status.equals(errorStatus), exceptionFunction)
      .bodyToMono(String.class);
  StepVerifier.create(mono).expectErrorSatisfies(actual -> assertSame(expected, actual)).verify(DELAY);
  assertEquals(1, this.server.getRequestCount());
}

代码示例来源: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());
  });
}

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

@Test
public void shouldReceiveJsonAsFluxString() {
  String content = "{\"bar\":\"barbar\",\"foo\":\"foofoo\"}";
  prepareResponse(response -> response
      .setHeader("Content-Type", "application/json").setBody(content));
  Flux<String> result = this.webClient.get()
      .uri("/json").accept(MediaType.APPLICATION_JSON)
      .retrieve()
      .bodyToFlux(String.class);
  StepVerifier.create(result)
      .expectNext(content)
      .expectComplete().verify(Duration.ofSeconds(3));
  expectRequestCount(1);
  expectRequest(request -> {
    assertEquals("/json", request.getPath());
    assertEquals("application/json", request.getHeader(HttpHeaders.ACCEPT));
  });
}

相关文章