You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/03/10 14:29:40 UTC
[camel] branch main updated: CAMEL-19127: Added unit test.
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 8297b4b9f4d CAMEL-19127: Added unit test.
8297b4b9f4d is described below
commit 8297b4b9f4d0443a9f7b9ec563c1f5a03bf807de
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Fri Mar 10 15:29:13 2023 +0100
CAMEL-19127: Added unit test.
---
.../quartz/SimpleScheduledRoutePolicyTest.java | 81 ++++++++++++++++++++++
1 file changed, 81 insertions(+)
diff --git a/components/camel-quartz/src/test/java/org/apache/camel/routepolicy/quartz/SimpleScheduledRoutePolicyTest.java b/components/camel-quartz/src/test/java/org/apache/camel/routepolicy/quartz/SimpleScheduledRoutePolicyTest.java
index 5110bb7dabe..603bf57b9d2 100644
--- a/components/camel-quartz/src/test/java/org/apache/camel/routepolicy/quartz/SimpleScheduledRoutePolicyTest.java
+++ b/components/camel-quartz/src/test/java/org/apache/camel/routepolicy/quartz/SimpleScheduledRoutePolicyTest.java
@@ -263,5 +263,86 @@ public class SimpleScheduledRoutePolicyTest {
context.getComponent("quartz", QuartzComponent.class).stop();
success.assertIsSatisfied();
}
+
+ @Nested
+ class SimpleTest7 extends NoBuilderTest {
+ @Test
+ public void testNoAutoStartup() throws Exception {
+ MockEndpoint success = context.getEndpoint("mock:success", MockEndpoint.class);
+ success.expectedMessageCount(1);
+
+ context.getComponent("direct", DirectComponent.class).setBlock(false);
+ context.getComponent("quartz", QuartzComponent.class)
+ .setPropertiesFile("org/apache/camel/routepolicy/quartz/myquartz.properties");
+ context.addRoutes(new RouteBuilder() {
+ public void configure() {
+ SimpleScheduledRoutePolicy policy = new SimpleScheduledRoutePolicy();
+ long startTime = System.currentTimeMillis() + 3000L;
+ policy.setRouteStartDate(new Date(startTime));
+ policy.setRouteStartRepeatCount(1);
+ policy.setRouteStartRepeatInterval(3000);
+
+ from("direct:start")
+ .routeId("test")
+ .noAutoStartup()
+ .routePolicy(policy)
+ .to("mock:success");
+ }
+ });
+ context.start();
+
+ Thread.sleep(5000);
+ assertSame(ServiceStatus.Started, context.getRouteController().getRouteStatus("test"));
+ template.sendBody("direct:start", "Ready or not, Here, I come");
+
+ context.getComponent("quartz", QuartzComponent.class).stop();
+ success.assertIsSatisfied();
+ }
+ }
+
+ @Nested
+ class SimpleTest8 extends NoBuilderTest {
+ @Test
+ public void testNoAutoStartupDynamic() throws Exception {
+ MockEndpoint success = context.getEndpoint("mock:success", MockEndpoint.class);
+ success.expectedMessageCount(1);
+
+ context.getComponent("direct", DirectComponent.class).setBlock(false);
+ context.getComponent("quartz", QuartzComponent.class)
+ .setPropertiesFile("org/apache/camel/routepolicy/quartz/myquartz.properties");
+
+ context.addRoutes(new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ from("direct:start")
+ .process(e -> context.addRoutes(new RouteBuilder() {
+ @Override
+ public void configure() throws Exception {
+ SimpleScheduledRoutePolicy policy = new SimpleScheduledRoutePolicy();
+ long startTime = System.currentTimeMillis() + 3000L;
+ policy.setRouteStartDate(new Date(startTime));
+
+ from("direct:dynamic")
+ .routeId("dynamic")
+ .noAutoStartup()
+ .routePolicy(policy)
+ .to("mock:success");
+ }
+ }));
+ }
+ });
+
+ context.start();
+
+ template.sendBody("direct:start", "Hello World");
+
+ Thread.sleep(5000);
+ assertSame(ServiceStatus.Started, context.getRouteController().getRouteStatus("dynamic"));
+ template.sendBody("direct:dynamic", "Ready or not, Here, I come");
+
+ context.getComponent("quartz", QuartzComponent.class).stop();
+ success.assertIsSatisfied();
+ }
+ }
}
}