Skip to content

Commit cb4c32d

Browse files
committed
fixed tests by stopping mock server
1 parent 4713763 commit cb4c32d

File tree

1 file changed

+52
-48
lines changed

1 file changed

+52
-48
lines changed

client-v2/src/test/java/com/clickhouse/client/HttpTransportTests.java

Lines changed: 52 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -803,64 +803,68 @@ public void testBearerTokenAuth() throws Exception {
803803
.options().port(9090).notifier(new ConsoleNotifier(false)));
804804
mockServer.start();
805805

806-
String jwtToken1 = Arrays.stream(
807-
new String[]{"header", "payload", "signature"})
808-
.map(s -> Base64.getEncoder().encodeToString(s.getBytes(StandardCharsets.UTF_8)))
809-
.reduce((s1, s2) -> s1 + "." + s2).get();
810-
try (Client client = new Client.Builder().addEndpoint(Protocol.HTTP, "localhost", mockServer.port(), false)
811-
.useBearerTokenAuth(jwtToken1)
812-
.compressServerResponse(false)
813-
.build()) {
814-
815-
mockServer.addStubMapping(WireMock.post(WireMock.anyUrl())
816-
.withHeader("Authorization", WireMock.equalTo("Bearer " + jwtToken1))
817-
.willReturn(WireMock.aResponse()
818-
.withHeader("X-ClickHouse-Summary",
819-
"{ \"read_bytes\": \"10\", \"read_rows\": \"1\"}")).build());
806+
try {
807+
String jwtToken1 = Arrays.stream(
808+
new String[]{"header", "payload", "signature"})
809+
.map(s -> Base64.getEncoder().encodeToString(s.getBytes(StandardCharsets.UTF_8)))
810+
.reduce((s1, s2) -> s1 + "." + s2).get();
811+
try (Client client = new Client.Builder().addEndpoint(Protocol.HTTP, "localhost", mockServer.port(), false)
812+
.useBearerTokenAuth(jwtToken1)
813+
.compressServerResponse(false)
814+
.build()) {
820815

821-
try (QueryResponse response = client.query("SELECT 1").get(1, TimeUnit.SECONDS)) {
822-
Assert.assertEquals(response.getReadBytes(), 10);
823-
} catch (Exception e) {
824-
Assert.fail("Unexpected exception", e);
816+
mockServer.addStubMapping(WireMock.post(WireMock.anyUrl())
817+
.withHeader("Authorization", WireMock.equalTo("Bearer " + jwtToken1))
818+
.willReturn(WireMock.aResponse()
819+
.withHeader("X-ClickHouse-Summary",
820+
"{ \"read_bytes\": \"10\", \"read_rows\": \"1\"}")).build());
821+
822+
try (QueryResponse response = client.query("SELECT 1").get(1, TimeUnit.SECONDS)) {
823+
Assert.assertEquals(response.getReadBytes(), 10);
824+
} catch (Exception e) {
825+
Assert.fail("Unexpected exception", e);
826+
}
825827
}
826-
}
827-
828-
String jwtToken2 = Arrays.stream(
829-
new String[]{"header2", "payload2", "signature2"})
830-
.map(s -> Base64.getEncoder().encodeToString(s.getBytes(StandardCharsets.UTF_8)))
831-
.reduce((s1, s2) -> s1 + "." + s2).get();
832-
833-
mockServer.resetAll();
834-
mockServer.addStubMapping(WireMock.post(WireMock.anyUrl())
835-
.withHeader("Authorization", WireMock.equalTo("Bearer " + jwtToken1))
836-
.willReturn(WireMock.aResponse()
837-
.withStatus(HttpStatus.SC_UNAUTHORIZED))
838-
.build());
839828

840-
try (Client client = new Client.Builder().addEndpoint(Protocol.HTTP, "localhost", mockServer.port(), false)
841-
.useBearerTokenAuth(jwtToken1)
842-
.compressServerResponse(false)
843-
.build()) {
844-
845-
try {
846-
client.execute("SELECT 1").get();
847-
fail("Exception expected");
848-
} catch (ServerException e) {
849-
Assert.assertEquals(e.getTransportProtocolCode(), HttpStatus.SC_UNAUTHORIZED);
850-
}
829+
String jwtToken2 = Arrays.stream(
830+
new String[]{"header2", "payload2", "signature2"})
831+
.map(s -> Base64.getEncoder().encodeToString(s.getBytes(StandardCharsets.UTF_8)))
832+
.reduce((s1, s2) -> s1 + "." + s2).get();
851833

852834
mockServer.resetAll();
853835
mockServer.addStubMapping(WireMock.post(WireMock.anyUrl())
854-
.withHeader("Authorization", WireMock.equalTo("Bearer " + jwtToken2))
836+
.withHeader("Authorization", WireMock.equalTo("Bearer " + jwtToken1))
855837
.willReturn(WireMock.aResponse()
856-
.withHeader("X-ClickHouse-Summary",
857-
"{ \"read_bytes\": \"10\", \"read_rows\": \"1\"}"))
858-
838+
.withStatus(HttpStatus.SC_UNAUTHORIZED))
859839
.build());
860840

861-
client.updateBearerToken(jwtToken2);
841+
try (Client client = new Client.Builder().addEndpoint(Protocol.HTTP, "localhost", mockServer.port(), false)
842+
.useBearerTokenAuth(jwtToken1)
843+
.compressServerResponse(false)
844+
.build()) {
845+
846+
try {
847+
client.execute("SELECT 1").get();
848+
fail("Exception expected");
849+
} catch (ServerException e) {
850+
Assert.assertEquals(e.getTransportProtocolCode(), HttpStatus.SC_UNAUTHORIZED);
851+
}
852+
853+
mockServer.resetAll();
854+
mockServer.addStubMapping(WireMock.post(WireMock.anyUrl())
855+
.withHeader("Authorization", WireMock.equalTo("Bearer " + jwtToken2))
856+
.willReturn(WireMock.aResponse()
857+
.withHeader("X-ClickHouse-Summary",
858+
"{ \"read_bytes\": \"10\", \"read_rows\": \"1\"}"))
859+
860+
.build());
862861

863-
client.execute("SELECT 1").get();
862+
client.updateBearerToken(jwtToken2);
863+
864+
client.execute("SELECT 1").get();
865+
}
866+
} finally {
867+
mockServer.stop();
864868
}
865869
}
866870
}

0 commit comments

Comments
 (0)