CAMEL-7978 Added unit test for the new added option in camel-quartz

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/360dc0de
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/360dc0de
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/360dc0de

Branch: refs/heads/master
Commit: 360dc0de19e26a873a966536d2e3ac491f2888b1
Parents: d31123f
Author: Willem Jiang <willem.ji...@gmail.com>
Authored: Fri Nov 21 21:44:04 2014 +0800
Committer: Willem Jiang <willem.ji...@gmail.com>
Committed: Fri Nov 21 22:16:24 2014 +0800

----------------------------------------------------------------------
 ...sistentStoreRestartAppChangeOptionsTest.java | 12 +++-
 ...StoreRestartAppChangeCronExpressionTest2.xml |  4 +-
 ...StoreRestartAppChangeCronExpressionTest3.xml | 70 ++++++++++++++++++++
 ...sistentStoreRestartAppChangeOptionsTest.java |  1 +
 4 files changed, 84 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/360dc0de/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
 
b/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
index e930c47..e1c8ea4 100644
--- 
a/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
+++ 
b/components/camel-quartz/src/test/java/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
@@ -36,6 +36,7 @@ public class 
SpringQuartzPersistentStoreRestartAppChangeOptionsTest extends Test
     private static AbstractXmlApplicationContext db;
     private AbstractXmlApplicationContext app;
     private AbstractXmlApplicationContext app2;
+    private AbstractXmlApplicationContext app3;
 
     @BeforeClass
     public static void prepareDB() {
@@ -54,7 +55,7 @@ public class 
SpringQuartzPersistentStoreRestartAppChangeOptionsTest extends Test
         // we're done so let's properly close the application contexts, but 
close
         // the second app before the first one so that the quartz scheduler 
running
         // inside it can be properly shutdown
-        IOHelper.close(app2, app);
+        IOHelper.close(app3, app2, app);
         
     }
 
@@ -88,6 +89,15 @@ public class 
SpringQuartzPersistentStoreRestartAppChangeOptionsTest extends Test
         
         assertNotEquals(cronExpression, cronExpression2);
         
+        app3 = new 
ClassPathXmlApplicationContext("org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest3.xml");
+        app3.start();
+        CamelContext camel3 = app3.getBean("camelContext3", 
CamelContext.class);
+        assertNotNull(camel3);
+        String cronExpression3 = ((CronTrigger) getTrigger(camel3, 
"quartzRoute")).getCronExpression();
+        app3.stop();
+        
+        assertEquals(cronExpression2, cronExpression3);
+        
         
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/360dc0de/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest2.xml
----------------------------------------------------------------------
diff --git 
a/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest2.xml
 
b/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest2.xml
index e782d53..f3aeb88 100644
--- 
a/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest2.xml
+++ 
b/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest2.xml
@@ -43,7 +43,7 @@
     <property name="schedulerContextAsMap">
       <!-- hook Camel into Quartz -->
       <map>
-          <entry key="CamelQuartzCamelContext-camelContext" 
value-ref="camelContext"/>
+          <entry key="CamelQuartzCamelContext-camelContext1" 
value-ref="camelContext"/>
       </map>
     </property>
     <property name="quartzProperties">
@@ -59,7 +59,7 @@
     </property>
   </bean>
 
-  <camelContext id="camelContext" managementNamePattern="#name#" 
xmlns="http://camel.apache.org/schema/spring";>
+  <camelContext id="camelContext" managementNamePattern="#name#1" 
xmlns="http://camel.apache.org/schema/spring";>
     <route id="quartzRoute">
       <from uri="quartzBean://app/test?cron=0+0/2+*+1/1+*+?+*"/>
       <to uri="log:trigger"/>

http://git-wip-us.apache.org/repos/asf/camel/blob/360dc0de/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest3.xml
----------------------------------------------------------------------
diff --git 
a/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest3.xml
 
b/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest3.xml
new file mode 100644
index 0000000..4396eaf
--- /dev/null
+++ 
b/components/camel-quartz/src/test/resources/org/apache/camel/component/quartz/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest3.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans";
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+       xmlns:jdbc="http://www.springframework.org/schema/jdbc";
+       xsi:schemaLocation="
+       http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans.xsd
+       http://www.springframework.org/schema/jdbc 
http://www.springframework.org/schema/jdbc/spring-jdbc.xsd
+       http://camel.apache.org/schema/spring 
http://camel.apache.org/schema/spring/camel-spring.xsd";>
+
+  <bean id="quartzDataSource" class="org.apache.commons.dbcp.BasicDataSource">
+    <property name="driverClassName" 
value="org.apache.derby.jdbc.EmbeddedDriver" />
+    <!-- refer the embedded database we setup inside 
SpringQuartzConsumerClusteredAppDatabase.xml -->
+    <property name="url" value="jdbc:derby:memory:quartz-db" />
+    <property name="username" value="sa" />
+    <property name="password" value="" />
+  </bean>
+
+  <bean id="quartzBean" 
class="org.apache.camel.component.quartz.QuartzComponent">
+    <property name="scheduler" ref="scheduler"/>
+  </bean>
+
+  <!-- jdbc:embedded-database must come before this so the job store exists -->
+  <bean id="scheduler" 
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
+    <property name="dataSource" ref="quartzDataSource"/>
+    <property name="autoStartup" value="false"/>
+    <!-- let Camel start -->
+    <property name="schedulerContextAsMap">
+      <!-- hook Camel into Quartz -->
+      <map>
+          <entry key="CamelQuartzCamelContext-camelContext" 
value-ref="camelContext3"/>
+      </map>
+    </property>
+    <property name="quartzProperties">
+      <props>
+        <prop key="org.quartz.scheduler.instanceName">myscheduler</prop>
+        <prop key="org.quartz.scheduler.instanceId">AUTO</prop>
+        <prop key="org.quartz.scheduler.skipUpdateCheck">true</prop>
+        <prop key="org.terracotta.quartz.skipUpdateCheck">true</prop>
+        <prop 
key="org.quartz.jobStore.class">org.quartz.impl.jdbcjobstore.JobStoreTX</prop>
+        <prop 
key="org.quartz.jobStore.driverDelegateClass">org.quartz.impl.jdbcjobstore.StdJDBCDelegate</prop>
+        <prop key="org.quartz.jobStore.isClustered">true</prop>
+      </props>
+    </property>
+  </bean>
+
+  <camelContext id="camelContext3" 
xmlns="http://camel.apache.org/schema/spring";>
+    <route id="quartzRoute">
+      <from 
uri="quartzBean://app/test?cron=0+0/2+*+1/1+*+?+*&amp;UsingFixedCamelContextName=true"/>
+      <to uri="log:trigger"/>
+      <to uri="mock:result"/>
+    </route>
+  </camelContext>
+
+</beans>

http://git-wip-us.apache.org/repos/asf/camel/blob/360dc0de/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
 
b/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
index fdebbe2..abf74b9 100644
--- 
a/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
+++ 
b/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java
@@ -88,6 +88,7 @@ public class 
SpringQuartzPersistentStoreRestartAppChangeOptionsTest extends Test
         app2.stop();
 
         assertNotEquals(cronExpression, cronExpression2);
+        
     }
 
     @Test

Reply via email to