@Test public void compressionActivatedOnClientAddsHeader() { AtomicReference<String> zip = new AtomicReference<>("fail"); HttpServer server = HttpServer.create() .port(0) .compress(true); DisposableServer runningServer = server.handle((in, out) -> out.sendString(Mono.just("reply"))) .wiretap(true) .bindNow(Duration.ofSeconds(10)); HttpClient client = HttpClient.create() .addressSupplier(() -> address(runningServer)) .wiretap(true) .compress(true); ByteBuf resp = client.headers(h -> zip.set(h.get("accept-encoding"))) .get() .uri("/test") .responseContent() .blockLast(); assertThat(zip.get()).isEqualTo("gzip"); runningServer.dispose(); runningServer.onDispose() .block(); }
@Test public void testCookie() { DisposableServer context = HttpServer.create() .host("localhost") .route(r -> r.get("/201", (req, res) -> res.addHeader("test", req.cookies() .get("test") .stream() .findFirst() .get() .value()) .status(HttpResponseStatus.CREATED) .sendHeaders())) .bindNow(); createHttpClientForContextWithAddress(context) .cookie("test", c -> c.setValue("lol")) .get() .uri("/201") .responseContent() .blockLast(); context.disposeNow(); }
@Test public void testUserAgent() { DisposableServer c = HttpServer.create() .port(0) .handle((req, resp) -> { Assert.assertTrue("" + req.requestHeaders() .get(HttpHeaderNames.USER_AGENT), req.requestHeaders() .contains(HttpHeaderNames.USER_AGENT) && req.requestHeaders() .get(HttpHeaderNames.USER_AGENT) .equals(HttpClient.USER_AGENT)); return req.receive().then(); }) .wiretap(true) .bindNow(); createHttpClientForContextWithPort(c) .get() .uri("/") .responseContent() .blockLast(); c.disposeNow(); }
@Test public void trueEnabledIncludeContentEncoding() { HttpServer server = HttpServer.create() .port(0) .compress(true); DisposableServer runningServer = server.handle((in, out) -> out.sendString(Mono.just("reply"))) .wiretap(true) .bindNow(Duration.ofSeconds(10)); HttpClient client = HttpClient.create() .addressSupplier(() -> address(runningServer)) .wiretap(true) .compress(true); ByteBuf res = client.headers(h -> Assert.assertTrue(h.contains("Accept-Encoding", "gzip", true))) .get() .uri("/test") .responseContent() .blockLast(); runningServer.dispose(); runningServer.onDispose() .block(); }
.uri("/") .responseContent() .blockLast(Duration.ofSeconds(30));