This is an automated email from the ASF dual-hosted git repository. jamesnetherton pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-quarkus-examples.git
commit ab40c09f8b2d51efae20ae93675e4a3bc42c0ee6 Author: James Netherton <[email protected]> AuthorDate: Wed Feb 9 15:43:31 2022 +0000 Remove references to health configuration options that no longer exist in Camel 3.16 --- health/src/main/resources/application.properties | 14 ----- .../src/test/java/org/acme/health/HealthTest.java | 41 +++---------- .../org/acme/observability/ObservabilityTest.java | 70 +++++----------------- 3 files changed, 24 insertions(+), 101 deletions(-) diff --git a/health/src/main/resources/application.properties b/health/src/main/resources/application.properties index 0e06a96..afe6384 100644 --- a/health/src/main/resources/application.properties +++ b/health/src/main/resources/application.properties @@ -58,23 +58,9 @@ camel.health.registry-enabled = true #camel.health.config[netty].parent = routes #camel.health.config[netty].enabled = false -# and configure each individually -camel.health.config[timer].parent = routes -camel.health.config[timer].interval = 5s -camel.health.config[netty].parent = routes -camel.health.config[netty].interval = 20s -camel.health.config[netty].failure-threshold = 10 - # find grained routes configuration per route (support wildcards) # (enabled is default true for discovered health-checks) #camel.health.config[*].enabled = true -# allow 5 failures with 10s apart as slack to handle routes being flaky -# however if after 5 failures then the state will be regarded as DOWN onwards -# (the route can recover and the state will then be UP) -#camel.health.config[*].parent = routes -#camel.health.config[*].interval = 10s -#camel.health.config[*].failure-threshold = 5 - # properties used in the route myPeriod = 10s diff --git a/health/src/test/java/org/acme/health/HealthTest.java b/health/src/test/java/org/acme/health/HealthTest.java index 7984a70..417a3f2 100644 --- a/health/src/test/java/org/acme/health/HealthTest.java +++ b/health/src/test/java/org/acme/health/HealthTest.java @@ -18,48 +18,23 @@ package org.acme.health; import io.quarkus.test.junit.QuarkusTest; import io.restassured.RestAssured; -import org.apache.camel.CamelContext; import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.Matchers.containsInAnyOrder; @QuarkusTest public class HealthTest { @Test public void testHealth() throws InterruptedException { - if (isAggregatedHealthResponse()) { - RestAssured.get("/q/health") - .then() - .statusCode(503) - .body("status", is("DOWN"), - "checks.status", containsInAnyOrder("DOWN", "UP"), - "checks.name", - containsInAnyOrder("camel-readiness-checks", "camel-liveness-checks"), - "checks.data.context", containsInAnyOrder(null, "UP")); - } else { - RestAssured.get("/q/health") - .then() - .statusCode(503) - .body("status", is("DOWN"), - "checks.findAll { it.name == 'toolong' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'context' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'camel-routes' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'camel-consumers' }.status", Matchers.contains("DOWN")); - } - } - - /** - * The JSON structure produced by camel-microprofile-health in Camel >= 3.15 is different to that - * produced in previous versions. This check allows the tests to handle both formats. - * - * TODO: Remove when examples upgraded to >= Camel 3.15 - */ - private boolean isAggregatedHealthResponse() { - String version = CamelContext.class.getPackage().getImplementationVersion(); - String[] versionParts = version.split("\\."); - return Integer.parseInt(versionParts[1]) < 15; + RestAssured.get("/q/health") + .then() + .statusCode(503) + .body("status", is("DOWN"), + "checks.findAll { it.name == 'toolong' }.status", Matchers.contains("UP"), + "checks.findAll { it.name == 'context' }.status", Matchers.contains("UP"), + "checks.findAll { it.name == 'camel-routes' }.status", Matchers.contains("DOWN"), + "checks.findAll { it.name == 'camel-consumers' }.status", Matchers.contains("DOWN")); } } diff --git a/observability/src/test/java/org/acme/observability/ObservabilityTest.java b/observability/src/test/java/org/acme/observability/ObservabilityTest.java index 6d4b979..e87b19a 100644 --- a/observability/src/test/java/org/acme/observability/ObservabilityTest.java +++ b/observability/src/test/java/org/acme/observability/ObservabilityTest.java @@ -20,14 +20,11 @@ import io.quarkus.test.junit.QuarkusTest; import io.restassured.RestAssured; import io.restassured.http.ContentType; import io.restassured.path.json.JsonPath; -import org.apache.camel.CamelContext; import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; import static io.restassured.RestAssured.given; -import static org.hamcrest.CoreMatchers.hasItems; import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.Matchers.containsInAnyOrder; import static org.junit.jupiter.api.Assertions.assertTrue; @QuarkusTest @@ -56,57 +53,22 @@ public class ObservabilityTest { @Test public void health() { - if (isAggregatedHealthResponse()) { - // Verify liveness - given() - .when().accept(ContentType.JSON) - .get("/q/health/live") - .then() - .statusCode(200) - .body("status", Matchers.is("UP"), - "checks.name", containsInAnyOrder("camel-liveness-checks"), - "checks.data.custom-liveness-check", containsInAnyOrder("UP")); - - // Verify readiness - given() - .when().accept(ContentType.JSON) - .get("/q/health/ready") - .then() - .statusCode(200) - .body("status", Matchers.is("UP"), - "checks.name", - hasItems("camel-readiness-checks", "Uptime readiness check"), - "checks.data.custom-readiness-check", containsInAnyOrder("UP")); - } else { - // Verify liveness - RestAssured.get("/q/health/live") - .then() - .statusCode(200) - .body("status", is("UP"), - "checks.findAll { it.name == 'custom-liveness-check' }.status", Matchers.contains("UP")); - - // Verify readiness - RestAssured.get("/q/health/ready") - .then() - .statusCode(200) - .body("status", is("UP"), - "checks.findAll { it.name == 'custom-readiness-check' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'Uptime readiness check' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'context' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'camel-routes' }.status", Matchers.contains("UP"), - "checks.findAll { it.name == 'camel-consumers' }.status", Matchers.contains("UP")); - } - } + // Verify liveness + RestAssured.get("/q/health/live") + .then() + .statusCode(200) + .body("status", is("UP"), + "checks.findAll { it.name == 'custom-liveness-check' }.status", Matchers.contains("UP")); - /** - * The JSON structure produced by camel-microprofile-health in Camel >= 3.15 is different to that - * produced in previous versions. This check allows the tests to handle both formats. - * - * TODO: Remove when examples upgraded to >= Camel 3.15 - */ - private boolean isAggregatedHealthResponse() { - String version = CamelContext.class.getPackage().getImplementationVersion(); - String[] versionParts = version.split("\\."); - return Integer.parseInt(versionParts[1]) < 15; + // Verify readiness + RestAssured.get("/q/health/ready") + .then() + .statusCode(200) + .body("status", is("UP"), + "checks.findAll { it.name == 'custom-readiness-check' }.status", Matchers.contains("UP"), + "checks.findAll { it.name == 'Uptime readiness check' }.status", Matchers.contains("UP"), + "checks.findAll { it.name == 'context' }.status", Matchers.contains("UP"), + "checks.findAll { it.name == 'camel-routes' }.status", Matchers.contains("UP"), + "checks.findAll { it.name == 'camel-consumers' }.status", Matchers.contains("UP")); } }
