Author: tv
Date: Sat Jul 25 21:26:13 2015
New Revision: 1692656
URL: http://svn.apache.org/r1692656
Log:
Fix job test, correct some typos
Added:
turbine/core/trunk/conf/test/TurbineNonPersistentSchedulerServiceTest.properties
(with props)
Modified:
turbine/core/trunk/conf/test/TestFulcrumComponents.properties
turbine/core/trunk/src/java/org/apache/turbine/services/schedule/TurbineScheduler.java
turbine/core/trunk/src/test/org/apache/turbine/services/schedule/TurbineNonPersistentSchedulerServiceTest.java
Modified: turbine/core/trunk/conf/test/TestFulcrumComponents.properties
URL:
http://svn.apache.org/viewvc/turbine/core/trunk/conf/test/TestFulcrumComponents.properties?rev=1692656&r1=1692655&r2=1692656&view=diff
==============================================================================
--- turbine/core/trunk/conf/test/TestFulcrumComponents.properties (original)
+++ turbine/core/trunk/conf/test/TestFulcrumComponents.properties Sat Jul 25
21:26:13 2015
@@ -50,7 +50,7 @@ scheduledjob.cache.size=10
# modules before the others.
#
# Note: org.apache.turbine.modules will always be added to the search
-# path. If it is not explictly added here, it will be added to the
+# path. If it is not explicitly added here, it will be added to the
# end.
#
# Default: org.apache.turbine.modules
@@ -139,7 +139,7 @@ services.AvalonComponentService.lookup =
#
# Set enabled to true to start the scheduler. The scheduler can be
-# stopped and started after Turbine has been intialized. See the
+# stopped and started after Turbine has been initialized. See the
# javadocs for org.apache.turbine.services.schedule.TurbineScheduler
# for the methods calls.
#
Added:
turbine/core/trunk/conf/test/TurbineNonPersistentSchedulerServiceTest.properties
URL:
http://svn.apache.org/viewvc/turbine/core/trunk/conf/test/TurbineNonPersistentSchedulerServiceTest.properties?rev=1692656&view=auto
==============================================================================
---
turbine/core/trunk/conf/test/TurbineNonPersistentSchedulerServiceTest.properties
(added)
+++
turbine/core/trunk/conf/test/TurbineNonPersistentSchedulerServiceTest.properties
Sat Jul 25 21:26:13 2015
@@ -0,0 +1,149 @@
+# 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.
+
+# -------------------------------------------------------------------
+#
+# L O G 4 J - L O G G I N G
+#
+# -------------------------------------------------------------------
+
+log4j.file = /conf/test/Log4j.properties
+pipeline.default.descriptor = conf/turbine-classic-pipeline.xml
+
+
+# If module.cache=true, then how large should we make the hashtables
+# by default.
+
+action.cache.size=20
+layout.cache.size=10
+navigation.cache.size=10
+page.cache.size=5
+screen.cache.size=50
+scheduledjob.cache.size=10
+
+# -------------------------------------------------------------------
+#
+# M O D U L E P A C K A G E S
+#
+# -------------------------------------------------------------------
+# This is the "classpath" for Turbine. In order to locate your own
+# modules, you should add them to this path. For example, if you have
+# com.company.actions, com.company.screens, com.company.navigations,
+# then this setting would be "com.company,org.apache.turbine.modules".
+# This path is searched in order. For example, Turbine comes with a
+# screen module named "Login". If you wanted to have your own screen
+# module named "Login", then you would specify the path to your
+# modules before the others.
+#
+# Note: org.apache.turbine.modules will always be added to the search
+# path. If it is not explicitly added here, it will be added to the
+# end.
+#
+# Default: org.apache.turbine.modules
+# -------------------------------------------------------------------
+
+module.packages=@MODULE_PACKAGES@
+
+# Choose between the two available implementations of an Avalon container -
ECM or YAAFI
+
+#
services.AvalonComponentService.classname=org.apache.turbine.services.avaloncomponent.TurbineAvalonComponentService
+services.AvalonComponentService.classname=org.apache.turbine.services.avaloncomponent.TurbineYaafiComponentService
+
+services.RunDataService.classname=org.apache.turbine.services.rundata.TurbineRunDataService
+services.AssemblerBrokerService.classname=org.apache.turbine.services.assemblerbroker.TurbineAssemblerBrokerService
+services.SchedulerService.classname=org.apache.turbine.services.schedule.TurbineNonPersistentSchedulerService
+services.TemplateService.classname=org.apache.turbine.services.template.TurbineTemplateService
+
+# -------------------------------------------------------------------
+#
+# R U N D A T A S E R V I C E
+#
+# -------------------------------------------------------------------
+
+services.RunDataService.default.run.data=org.apache.turbine.services.rundata.DefaultTurbineRunData
+services.RunDataService.default.parameter.parser=org.apache.fulcrum.parser.DefaultParameterParser
+services.RunDataService.default.cookie.parser=org.apache.fulcrum.parser.DefaultCookieParser
+
+# -------------------------------------------------------------------
+#
+# A S S E M B L E R B R O K E R S E R V I C E
+#
+# -------------------------------------------------------------------
+# A list of AssemblerFactory classes that will be registered
+# with TurbineAssemblerBrokerService
+# -------------------------------------------------------------------
+
+services.AssemblerBrokerService.screen=org.apache.turbine.services.assemblerbroker.util.java.JavaScreenFactory
+#
services.AssemblerBrokerService.screen=org.apache.turbine.services.assemblerbroker.util.python.PythonScreenFactory
+services.AssemblerBrokerService.action=org.apache.turbine.services.assemblerbroker.util.java.JavaActionFactory
+services.AssemblerBrokerService.layout=org.apache.turbine.services.assemblerbroker.util.java.JavaLayoutFactory
+services.AssemblerBrokerService.page=org.apache.turbine.services.assemblerbroker.util.java.JavaPageFactory
+services.AssemblerBrokerService.navigation=org.apache.turbine.services.assemblerbroker.util.java.JavaNavigationFactory
+services.AssemblerBrokerService.scheduledjob=org.apache.turbine.services.assemblerbroker.util.java.JavaScheduledJobFactory
+
+# -------------------------------------------------------------------
+#
+# T E M P L A T E S E R V I C E
+#
+# -------------------------------------------------------------------
+
+# Roughly, the number of templates in each category.
+#
+# Defaults: layout=2, navigation=10, screen=50
+
+services.TemplateService.layout.cache.size=2
+services.TemplateService.navigation.cache.size=10
+services.TemplateService.screen.cache.size=50
+
+# -------------------------------------------------------------------
+#
+# A V A L O N C O M P O N E N T S E R V I C E
+#
+# -------------------------------------------------------------------
+
+services.AvalonComponentService.componentConfiguration =
conf/test/fulcrumComponentConfiguration.xml
+services.AvalonComponentService.componentRoles =
conf/test/fulcrumRoleConfiguration.xml
+services.AvalonComponentService.lookup =
org.apache.fulcrum.cache.GlobalCacheService
+
+# -------------------------------------------------------------------
+#
+# S C H E D U L E R S E R V I C E
+#
+# -------------------------------------------------------------------
+
+#
+# Set enabled to true to start the scheduler. The scheduler can be
+# stopped and started after Turbine has been initialized. See the
+# javadocs for org.apache.turbine.services.schedule.TurbineScheduler
+# for the methods calls.
+#
+# Default = false
+#
+services.SchedulerService.enabled=true
+
+# Determines if the scheduler service should be initialized early. This
+# Should always be set to true!!!!
+services.SchedulerService.earlyInit=true
+
+# Test job
+services.SchedulerService.scheduler.jobs=SimpleJob
+services.SchedulerService.scheduler.job.SimpleJob.ID=1
+services.SchedulerService.scheduler.job.SimpleJob.SECOND=1
+services.SchedulerService.scheduler.job.SimpleJob.MINUTE=-1
+services.SchedulerService.scheduler.job.SimpleJob.HOUR=-1
+services.SchedulerService.scheduler.job.SimpleJob.WEEK_DAY=-1
+services.SchedulerService.scheduler.job.SimpleJob.DAY_OF_MONTH=-1
Propchange:
turbine/core/trunk/conf/test/TurbineNonPersistentSchedulerServiceTest.properties
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified:
turbine/core/trunk/src/java/org/apache/turbine/services/schedule/TurbineScheduler.java
URL:
http://svn.apache.org/viewvc/turbine/core/trunk/src/java/org/apache/turbine/services/schedule/TurbineScheduler.java?rev=1692656&r1=1692655&r2=1692656&view=diff
==============================================================================
---
turbine/core/trunk/src/java/org/apache/turbine/services/schedule/TurbineScheduler.java
(original)
+++
turbine/core/trunk/src/java/org/apache/turbine/services/schedule/TurbineScheduler.java
Sat Jul 25 21:26:13 2015
@@ -27,7 +27,7 @@ import org.apache.turbine.services.Turbi
import org.apache.turbine.util.TurbineException;
/**
- * This is a fascade class to provide easy access to the Scheduler
+ * This is a facade class to provide easy access to the Scheduler
* service. All access methods are static and act upon the current
* instance of the scheduler service.
*
Modified:
turbine/core/trunk/src/test/org/apache/turbine/services/schedule/TurbineNonPersistentSchedulerServiceTest.java
URL:
http://svn.apache.org/viewvc/turbine/core/trunk/src/test/org/apache/turbine/services/schedule/TurbineNonPersistentSchedulerServiceTest.java?rev=1692656&r1=1692655&r2=1692656&view=diff
==============================================================================
---
turbine/core/trunk/src/test/org/apache/turbine/services/schedule/TurbineNonPersistentSchedulerServiceTest.java
(original)
+++
turbine/core/trunk/src/test/org/apache/turbine/services/schedule/TurbineNonPersistentSchedulerServiceTest.java
Sat Jul 25 21:26:13 2015
@@ -27,15 +27,12 @@ import static org.junit.Assert.assertTha
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import org.apache.commons.configuration.BaseConfiguration;
-import org.apache.commons.configuration.Configuration;
import org.apache.turbine.modules.scheduledjobs.SimpleJob;
-import org.apache.turbine.services.ServiceManager;
-import org.apache.turbine.services.TurbineServices;
+import org.apache.turbine.util.TurbineConfig;
import org.apache.turbine.util.TurbineException;
import org.hamcrest.CoreMatchers;
-import org.junit.BeforeClass;
-import org.junit.Ignore;
+import org.junit.After;
+import org.junit.Before;
import org.junit.Test;
/**
@@ -46,38 +43,24 @@ import org.junit.Test;
*/
public class TurbineNonPersistentSchedulerServiceTest
{
- private static final String PREFIX = "services." +
ScheduleService.SERVICE_NAME + '.';
+ private TurbineConfig tc = null;
- @BeforeClass
- public static void init()
- throws Exception
+ @Before
+ public void setUp() throws Exception
{
+ tc =
+ new TurbineConfig(
+ ".",
+
"/conf/test/TurbineNonPersistentSchedulerServiceTest.properties");
+ tc.initialize();
+ }
- ServiceManager serviceManager = TurbineServices.getInstance();
- serviceManager.setApplicationRoot(".");
-
- Configuration cfg = new BaseConfiguration();
- cfg.setProperty(PREFIX + "classname",
TurbineNonPersistentSchedulerService.class.getName());
-
- cfg.setProperty(PREFIX + "scheduler.jobs", "SimpleJob");
- cfg.setProperty(PREFIX + "scheduler.job.SimpleJob.ID", "1");
- cfg.setProperty(PREFIX + "scheduler.job.SimpleJob.SECOND", "10");
- cfg.setProperty(PREFIX + "scheduler.job.SimpleJob.MINUTE", "-1");
- cfg.setProperty(PREFIX + "scheduler.job.SimpleJob.HOUR", "-1");
- cfg.setProperty(PREFIX + "scheduler.job.SimpleJob.WEEK_DAY", "-1");
- cfg.setProperty(PREFIX + "scheduler.job.SimpleJob.DAY_OF_MONTH", "-1");
- cfg.setProperty(PREFIX + "enabled", "true");
-
- serviceManager.setConfiguration(cfg);
-
- try
- {
- serviceManager.init();
- }
- catch (Exception e)
+ @After
+ public void tearDown() throws Exception
+ {
+ if (tc != null)
{
- e.printStackTrace();
- fail();
+ tc.dispose();
}
}
@@ -139,13 +122,13 @@ public class TurbineNonPersistentSchedul
JobEntry je = TurbineScheduler.getJob(1);
assertThat(je,
CoreMatchers.instanceOf(JobEntryNonPersistent.class));
JobEntryNonPersistent jenp = (JobEntryNonPersistent)je;
- assertEquals(jenp.getJobId(), 1);
- assertEquals(jenp.getSecond(), 10);
- assertEquals(jenp.getMinute(), -1);
- assertEquals(jenp.getHour(), -1);
- assertEquals(jenp.getDayOfMonth(), -1);
- assertEquals(jenp.getWeekDay(), -1);
- assertEquals(jenp.getTask(), "SimpleJob");
+ assertEquals(1, jenp.getJobId());
+ assertEquals(1, jenp.getSecond());
+ assertEquals(-1, jenp.getMinute());
+ assertEquals(-1, jenp.getHour());
+ assertEquals(-1, jenp.getDayOfMonth());
+ assertEquals(-1, jenp.getWeekDay());
+ assertEquals("SimpleJob", jenp.getTask());
}
catch (TurbineException e)
{
@@ -157,16 +140,12 @@ public class TurbineNonPersistentSchedul
/**
* Test to make sure a job actually runs.
*/
- @Ignore // Doesn't work without the complete Turbine
@Test public void testRunningJob()
{
- TurbineScheduler.startScheduler();
- assertTrue(TurbineScheduler.isEnabled());
-
try
{
int beforeCount = SimpleJob.getCounter();
- Thread.sleep(12000);
+ Thread.sleep(1200);
int afterCount = SimpleJob.getCounter();
assertTrue(beforeCount < afterCount);