diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 613808373..21945fce7 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,7 +1,7 @@ [versions] micronaut-docs = "2.0.0" -micronaut = "4.6.1" -groovy = "4.0.18" +micronaut = "4.6.2" +groovy = "4.0.22" spock = "2.3-groovy-4.0" managed-google-auth-library-oauth2http = "1.24.1" @@ -32,7 +32,7 @@ micronaut-logging = "1.4.0" micronaut-reactor = "3.5.0" micronaut-rxjava3 = "3.5.0" micronaut-serde = "2.11.0" -micronaut-servlet = "4.10.0" +micronaut-servlet = "4.10.1" micronaut-tracing = "6.8.0" micronaut-test = "4.5.0" micronaut-discovery = "4.4.0" diff --git a/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/GcpFunctionHttpServerUnderTest.java b/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/GcpFunctionHttpServerUnderTest.java index eace1bb2f..1f5b9dee9 100644 --- a/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/GcpFunctionHttpServerUnderTest.java +++ b/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/GcpFunctionHttpServerUnderTest.java @@ -130,13 +130,25 @@ public MutableConvertibleValues getAttributes() { @NonNull public Optional getBody() { if (bodyType != null && bodyType.isAssignableFrom(byte[].class)) { - return (Optional) Optional.of(googleHttpResponse.getBodyAsBytes()); + byte[] bodyAsBytes = googleHttpResponse.getBodyAsBytes(); + if (bodyAsBytes.length == 0) { + return Optional.empty(); + } + return (Optional) Optional.of(bodyAsBytes); } else if (bodyType == null) { - return (Optional) Optional.of(googleHttpResponse.getBodyAsText()); + String str = googleHttpResponse.getBodyAsText(); + if (StringUtils.isEmpty(str)) { + return Optional.empty(); + } + return (Optional) Optional.of(str); } else { return conversionService.convert(googleHttpResponse.getBodyAsText(), bodyType).or(() -> { try { - return Optional.of(jsonMapper.readValue(googleHttpResponse.getBodyAsBytes(), bodyType)); + byte[] bodyAsBytes = googleHttpResponse.getBodyAsBytes(); + if (bodyAsBytes.length == 0) { + return Optional.empty(); + } + return Optional.of(jsonMapper.readValue(bodyAsBytes, bodyType)); } catch (IOException e) { throw new HttpClientResponseException("Error reading body", this); } diff --git a/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/tests/GcpFunctionHttpServerTestSuite.java b/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/tests/GcpFunctionHttpServerTestSuite.java index b6c252495..1ecc25d7f 100644 --- a/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/tests/GcpFunctionHttpServerTestSuite.java +++ b/test-suite-http-server-tck-gcp-function-http/src/test/java/io/micronaut/http/server/tck/gcp/function/tests/GcpFunctionHttpServerTestSuite.java @@ -1,9 +1,6 @@ package io.micronaut.http.server.tck.gcp.function.tests; -import org.junit.platform.suite.api.ExcludeClassNamePatterns; -import org.junit.platform.suite.api.SelectPackages; -import org.junit.platform.suite.api.Suite; -import org.junit.platform.suite.api.SuiteDisplayName; +import org.junit.platform.suite.api.*; @Suite @SelectPackages({ @@ -12,7 +9,6 @@ }) @ExcludeClassNamePatterns({ "io.micronaut.http.server.tck.tests.FilterProxyTest", - "io.micronaut.http.server.tck.tests.NoBodyResponseTest" }) @SuiteDisplayName("HTTP Server TCK for for GCP Function HTTP") class GcpFunctionHttpServerTestSuite {