From b2448c4aeda813ff9d619e1747c2490b638a8151 Mon Sep 17 00:00:00 2001 From: slinkydeveloper Date: Mon, 18 Aug 2025 12:30:37 +0200 Subject: [PATCH] Add test to make sure the endpoint runs using HTTP/2 --- .../kotlin/RestateHttpEndpointBeanTest.kt | 21 +++++++------------ .../java/RestateHttpEndpointBeanTest.java | 4 +++- 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/sdk-spring-boot-kotlin-starter/src/test/kotlin/dev/restate/sdk/springboot/kotlin/RestateHttpEndpointBeanTest.kt b/sdk-spring-boot-kotlin-starter/src/test/kotlin/dev/restate/sdk/springboot/kotlin/RestateHttpEndpointBeanTest.kt index e1fc078c..68d44f5f 100644 --- a/sdk-spring-boot-kotlin-starter/src/test/kotlin/dev/restate/sdk/springboot/kotlin/RestateHttpEndpointBeanTest.kt +++ b/sdk-spring-boot-kotlin-starter/src/test/kotlin/dev/restate/sdk/springboot/kotlin/RestateHttpEndpointBeanTest.kt @@ -10,14 +10,12 @@ package dev.restate.sdk.springboot.kotlin import com.fasterxml.jackson.databind.ObjectMapper import dev.restate.sdk.core.generated.manifest.EndpointManifestSchema -import dev.restate.sdk.core.generated.manifest.Service import dev.restate.sdk.springboot.RestateHttpEndpointBean import java.io.IOException import java.net.URI import java.net.http.HttpClient import java.net.http.HttpRequest import java.net.http.HttpResponse -import org.assertj.core.api.Assertions import org.assertj.core.api.Assertions.assertThat import org.junit.jupiter.api.Test import org.springframework.beans.factory.annotation.Autowired @@ -36,26 +34,23 @@ class RestateHttpEndpointBeanTest { assertThat(restateHttpEndpointBean.actualPort()).isPositive() // Check if discovery replies containing the Greeter service - val client = HttpClient.newHttpClient() + val client = HttpClient.newBuilder().version(HttpClient.Version.HTTP_2).build() val response = - client.send( + client.send( HttpRequest.newBuilder() .GET() + .version(HttpClient.Version.HTTP_2) .uri( - URI.create( - ("http://localhost:" + restateHttpEndpointBean.actualPort()).toString() + - "/discover")) + URI.create("http://localhost:${restateHttpEndpointBean.actualPort()}/discover")) .header("Accept", "application/vnd.restate.endpointmanifest.v1+json") .build(), HttpResponse.BodyHandlers.ofString()) - Assertions.assertThat(response.statusCode()).isEqualTo(200) + assertThat(response.version()).isEqualTo(HttpClient.Version.HTTP_2) + assertThat(response.statusCode()).isEqualTo(200) val endpointManifest = - ObjectMapper() - .readValue(response.body(), EndpointManifestSchema::class.java) + ObjectMapper().readValue(response.body(), EndpointManifestSchema::class.java) - Assertions.assertThat(endpointManifest.services) - .map { it?.name } - .containsOnly("greeter") + assertThat(endpointManifest.services).map { it?.name }.containsOnly("greeter") } } diff --git a/sdk-spring-boot-starter/src/test/java/dev/restate/sdk/springboot/java/RestateHttpEndpointBeanTest.java b/sdk-spring-boot-starter/src/test/java/dev/restate/sdk/springboot/java/RestateHttpEndpointBeanTest.java index 0de42bf0..dacab947 100644 --- a/sdk-spring-boot-starter/src/test/java/dev/restate/sdk/springboot/java/RestateHttpEndpointBeanTest.java +++ b/sdk-spring-boot-starter/src/test/java/dev/restate/sdk/springboot/java/RestateHttpEndpointBeanTest.java @@ -35,17 +35,19 @@ public void httpEndpointShouldBeRunning() throws IOException, InterruptedExcepti assertThat(restateHttpEndpointBean.actualPort()).isPositive(); // Check if discovery replies containing the Greeter service - var client = HttpClient.newHttpClient(); + var client = HttpClient.newBuilder().version(HttpClient.Version.HTTP_2).build(); var response = client.send( HttpRequest.newBuilder() .GET() + .version(HttpClient.Version.HTTP_2) .uri( URI.create( "http://localhost:" + restateHttpEndpointBean.actualPort() + "/discover")) .header("Accept", "application/vnd.restate.endpointmanifest.v1+json") .build(), HttpResponse.BodyHandlers.ofString()); + assertThat(response.version()).isEqualTo(HttpClient.Version.HTTP_2); assertThat(response.statusCode()).isEqualTo(200); var endpointManifest =