I will look into the reason for failure. On the fact that it does the
same you are wrong. You totally missed the nature of the test.
Previously the trigger was not firing at the right times after a
restart. I am working on fixes and improvements in the quartz component
now. I will add some details to make it clearer what's being tested.
Cheers,
Hadrian
On 01/28/2012 04:24 AM, Claus Ibsen wrote:
The test keeps failing occasionally on CI servers.
The test does the same.
Restart the route, and checks that when the route is stopped, that
quartz, does not emit new messages.
On Fri, Jan 27, 2012 at 9:11 PM, Hadrian Zbarcea<hzbar...@gmail.com> wrote:
I have no idea what prompted this change, but it removed important tests. It
would help to ask next time.
Hadrian
On 01/27/2012 03:10 AM, davscl...@apache.org wrote:
Author: davsclaus
Date: Fri Jan 27 08:10:06 2012
New Revision: 1236567
URL: http://svn.apache.org/viewvc?rev=1236567&view=rev
Log:
Fixed test
Modified:
camel/trunk/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/QuartzRouteRestartTest.java
Modified:
camel/trunk/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/QuartzRouteRestartTest.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/QuartzRouteRestartTest.java?rev=1236567&r1=1236566&r2=1236567&view=diff
==============================================================================
---
camel/trunk/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/QuartzRouteRestartTest.java
(original)
+++
camel/trunk/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/QuartzRouteRestartTest.java
Fri Jan 27 08:10:06 2012
@@ -16,11 +16,6 @@
*/
package org.apache.camel.component.quartz;
-import java.util.Calendar;
-import java.util.Date;
-
-import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
import org.apache.camel.test.junit4.CamelTestSupport;
@@ -34,10 +29,25 @@ public class QuartzRouteRestartTest exte
@Test
public void testQuartzCronRoute() throws Exception {
MockEndpoint mock = getMockEndpoint("mock:result");
- mock.setResultWaitTime(15000);
- mock.expectedMinimumMessageCount(3);
- mock.message(0).arrives().between(6, 9).seconds().beforeNext();
- mock.message(2).arrives().between(3,
5).seconds().afterPrevious();
+ mock.expectedMinimumMessageCount(2);
+
+ assertMockEndpointsSatisfied();
+
+ // restart route
+ context().stopRoute("trigger");
+ mock.reset();
+ mock.expectedMessageCount(0);
+
+ // wait a bit
+ Thread.sleep(2000);
+
+ assertMockEndpointsSatisfied();
+
+ // start route, and we got messages again
+ mock.reset();
+ mock.expectedMessageCount(1);
+
+ context().startRoute("trigger");
assertMockEndpointsSatisfied();
}
@@ -46,35 +56,10 @@ public class QuartzRouteRestartTest exte
protected RouteBuilder createRouteBuilder() {
return new RouteBuilder() {
public void configure() {
- // START SNIPPET: e1
-
from("quartz://groupName/timerName?cron=0/4+*+*+*+*+?").routeId("trigger")
- .setBody(bean(CurrentTime.class))
- // .to("log:QUARTZ")
- .to("seda:control");
-
- from("seda:control").routeId("control")
- // .to("log:CONTROL")
- .to("mock:result")
- .process(new Processor() {
- private boolean done;
- @Override
- public void process(Exchange exchange) throws
Exception {
- if (!done) {
- done = true;
-
exchange.getContext().stopRoute("trigger");
- Thread.sleep(5000);
-
exchange.getContext().startRoute("trigger");
- }
- }
- });
- // END SNIPPET: e1
+
from("quartz://groupName/timerName?cron=0/1+*+*+*+*+?").routeId("trigger")
+ .to("mock:result");
}
};
}
- public static class CurrentTime {
- public Date get() {
- return Calendar.getInstance().getTime();
- }
- }
}
--
Hadrian Zbarcea
Principal Software Architect
Talend, Inc
http://coders.talend.com/
http://camelbot.blogspot.com/
--
Hadrian Zbarcea
Principal Software Architect
Talend, Inc
http://coders.talend.com/
http://camelbot.blogspot.com/