This is an automated email from the ASF dual-hosted git repository. jlmonteiro pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tomee.git
commit c021e553f233222543e7d707479c1c62f4546574 Author: Jean-Louis Monteiro <[email protected]> AuthorDate: Tue Jun 21 14:11:34 2022 +0200 Add a couple of fixes in examples and TCK --- examples/mp-custom-healthcheck/pom.xml | 2 +- .../org/superbiz/WeatherServiceHealthCheck.java | 8 +++---- .../java/org/superbiz/test/WeatherServiceTest.java | 25 ++++++++++++++++------ .../src/test/resources/arquillian.xml | 1 + .../java/org/superbiz/rest/WeatherServiceTest.java | 2 +- examples/pom.xml | 2 ++ .../tomee/bval/tck/BValTCKArchiveProcessor.java | 1 + tck/bval-tomee/src/test/resources/dev.xml | 2 +- 8 files changed, 29 insertions(+), 14 deletions(-) diff --git a/examples/mp-custom-healthcheck/pom.xml b/examples/mp-custom-healthcheck/pom.xml index a857d5bac4..8ab51845ba 100644 --- a/examples/mp-custom-healthcheck/pom.xml +++ b/examples/mp-custom-healthcheck/pom.xml @@ -24,7 +24,7 @@ <name>TomEE :: Examples :: Custom HealthCheck</name> <properties> <arquillian-junit-container.version>1.7.0.Alpha10</arquillian-junit-container.version> - <microprofile-health-api.version>1.0</microprofile-health-api.version> + <microprofile-health-api.version>4.0</microprofile-health-api.version> <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version> <maven-war-plugin.version>3.1.0</maven-war-plugin.version> <jakartaee-api.version>9.1-M2-SNAPSHOT</jakartaee-api.version> diff --git a/examples/mp-custom-healthcheck/src/main/java/org/superbiz/WeatherServiceHealthCheck.java b/examples/mp-custom-healthcheck/src/main/java/org/superbiz/WeatherServiceHealthCheck.java index dc73bf62c3..12b912ce7e 100644 --- a/examples/mp-custom-healthcheck/src/main/java/org/superbiz/WeatherServiceHealthCheck.java +++ b/examples/mp-custom-healthcheck/src/main/java/org/superbiz/WeatherServiceHealthCheck.java @@ -18,15 +18,15 @@ package org.superbiz; import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; -import org.eclipse.microprofile.health.Health; import org.eclipse.microprofile.health.HealthCheck; import org.eclipse.microprofile.health.HealthCheckResponse; import org.eclipse.microprofile.health.HealthCheckResponseBuilder; +import org.eclipse.microprofile.health.Liveness; /** * Custom Health Check for OpenWeatherMap API Service. */ -@Health +@Liveness @ApplicationScoped public class WeatherServiceHealthCheck implements HealthCheck { @@ -34,14 +34,14 @@ public class WeatherServiceHealthCheck implements HealthCheck { @Override public HealthCheckResponse call() { - HealthCheckResponseBuilder responseBuilder = HealthCheckResponse.named("OpenWeatherMap"); + final HealthCheckResponseBuilder responseBuilder = HealthCheckResponse.named("OpenWeatherMap"); try { WeatherApiStatus status = weatherGateway.getApiStatus(); return responseBuilder.withData("weatherServiceApiUrl", status.getUrl()) .withData("weatherServiceApiVersion", status.getVersion()) .withData("weatherServiceMessage", status.getMessage()) .up().build(); - } catch (WeatherException e) { + } catch (final WeatherException e) { return responseBuilder.withData("weatherServiceErrorMessage", e.getMessage()).down().build(); } } diff --git a/examples/mp-custom-healthcheck/src/test/java/org/superbiz/test/WeatherServiceTest.java b/examples/mp-custom-healthcheck/src/test/java/org/superbiz/test/WeatherServiceTest.java index f7aa7147a7..d21a318068 100644 --- a/examples/mp-custom-healthcheck/src/test/java/org/superbiz/test/WeatherServiceTest.java +++ b/examples/mp-custom-healthcheck/src/test/java/org/superbiz/test/WeatherServiceTest.java @@ -20,6 +20,7 @@ import java.io.StringReader; import jakarta.json.Json; import jakarta.json.JsonArray; import jakarta.json.JsonObject; +import jakarta.json.JsonValue; import jakarta.ws.rs.client.Client; import jakarta.ws.rs.client.ClientBuilder; import jakarta.ws.rs.client.WebTarget; @@ -38,9 +39,12 @@ import org.junit.Test; import org.junit.runner.RunWith; import java.net.URL; +import java.util.Optional; + import org.superbiz.WeatherEndpoint; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; @RunWith(Arquillian.class) public class WeatherServiceTest { @@ -65,19 +69,26 @@ public class WeatherServiceTest { @Test @InSequence(1) public void testHealthCheckUpService() { - WebTarget webTarget = this.client.target(this.base.toExternalForm()); - String json = webTarget.path("/health").request(MediaType.APPLICATION_JSON).get().readEntity(String.class); + final WebTarget webTarget = this.client.target(this.base.toExternalForm()); + final String json = webTarget.path("/health").request(MediaType.APPLICATION_JSON).get().readEntity(String.class); - JsonArray checks = this.readJson(json).getJsonArray("checks"); - JsonObject data = checks.getJsonObject(0).getJsonObject("data"); + final JsonArray checks = this.readJson(json).getJsonArray("checks"); + + final Optional<JsonValue> weatherCheck = checks.stream() + .filter(c -> "OpenWeatherMap".equals(c.asJsonObject().getString("name"))) + .findFirst(); + + assertTrue(weatherCheck.isPresent()); + final JsonObject weatherJson = weatherCheck.get().asJsonObject(); + final JsonObject data = weatherJson.getJsonObject("data"); assertEquals("http://api.openweathermap.org/data/2.5/", data.getString("weatherServiceApiUrl")); assertEquals("2.5", data.getString("weatherServiceApiVersion")); assertEquals("Your account will become unavailable soon due to limitation of " + "your subscription type. Remaining API calls are 1", data.getString("weatherServiceMessage")); - assertEquals("OpenWeatherMap", checks.getJsonObject(0).getString("name")); - assertEquals("UP", checks.getJsonObject(0).getString("state")); + assertEquals("OpenWeatherMap", weatherJson.getString("name")); + assertEquals("UP", weatherJson.getString("status")); } @Test @@ -102,7 +113,7 @@ public class WeatherServiceTest { data.getString("weatherServiceErrorMessage")); assertEquals("OpenWeatherMap", checks.getJsonObject(0).getString("name")); - assertEquals("DOWN", checks.getJsonObject(0).getString("state")); + assertEquals("DOWN", checks.getJsonObject(0).getString("status")); } @Test diff --git a/examples/mp-custom-healthcheck/src/test/resources/arquillian.xml b/examples/mp-custom-healthcheck/src/test/resources/arquillian.xml index 7639e7be76..bfb84734f3 100644 --- a/examples/mp-custom-healthcheck/src/test/resources/arquillian.xml +++ b/examples/mp-custom-healthcheck/src/test/resources/arquillian.xml @@ -22,6 +22,7 @@ <property name="httpPort">-1</property> <property name="stopPort">-1</property> <property name="classifier">microprofile</property> + <property name="debug">false</property> <property name="dir">target/apache-tomee-remote</property> <property name="appWorkingDir">target/arquillian-test-working-dir</property> </configuration> diff --git a/examples/mp-metrics-counted/src/test/java/org/superbiz/rest/WeatherServiceTest.java b/examples/mp-metrics-counted/src/test/java/org/superbiz/rest/WeatherServiceTest.java index a6f2504c83..c4c3bd903b 100644 --- a/examples/mp-metrics-counted/src/test/java/org/superbiz/rest/WeatherServiceTest.java +++ b/examples/mp-metrics-counted/src/test/java/org/superbiz/rest/WeatherServiceTest.java @@ -89,7 +89,7 @@ public class WeatherServiceTest { .get(String.class); assertEquals("# HELP application_weather_day_status_total This metric shows the weather status of the day.\n" + "# TYPE application_weather_day_status_total counter\n" + - "application_weather_day_status_total{weather=\"day\"} 1.0", metric); + "application_weather_day_status_total{weather=\"day\"} 1.0\n", metric); } private void assertJsonFormat(final String metricPath) { diff --git a/examples/pom.xml b/examples/pom.xml index f0e8e0d428..82c717b21c 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -110,8 +110,10 @@ <module>movies-complete</module> <module>mp-config-example</module> <module>mp-config-source-database</module> + <!-- Todo not supported yet <module>mp-faulttolerance-fallback</module> <module>mp-faulttolerance-retry</module> + --> <module>mp-jwt-bean-validation</module> <module>mp-jwt-bean-validation-strongly-typed</module> <module>mp-metrics-counted</module> diff --git a/tck/bval-tomee/src/test/java/org/apache/tomee/bval/tck/BValTCKArchiveProcessor.java b/tck/bval-tomee/src/test/java/org/apache/tomee/bval/tck/BValTCKArchiveProcessor.java index c2becc1ff3..b5a805c64a 100644 --- a/tck/bval-tomee/src/test/java/org/apache/tomee/bval/tck/BValTCKArchiveProcessor.java +++ b/tck/bval-tomee/src/test/java/org/apache/tomee/bval/tck/BValTCKArchiveProcessor.java @@ -32,5 +32,6 @@ public class BValTCKArchiveProcessor implements ApplicationArchiveProcessor { if (archive instanceof WebArchive) { WebArchive.class.cast(archive).addAsLibrary(jarLocation(PlatformUtil.class)); } + System.out.println(archive.toString(true)); } } diff --git a/tck/bval-tomee/src/test/resources/dev.xml b/tck/bval-tomee/src/test/resources/dev.xml index a1ee993cf5..193623a2b4 100644 --- a/tck/bval-tomee/src/test/resources/dev.xml +++ b/tck/bval-tomee/src/test/resources/dev.xml @@ -19,7 +19,7 @@ <suite name="BVal-TCK" verbose="1"> <test name="BVal-TCK"> <classes> - <class name="org.hibernate.beanvalidation.tck.tests.bootstrap.customprovider.BootstrapNonAvailableValidationProviderTest" /> + <class name="org.hibernate.beanvalidation.tck.tests.valueextraction.builtin.JavaFXValueExtractorsTest" /> </classes> </test> </suite>
