]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.support.simple/src/test/java/org/argeo/slc/core/execution/DefaultModulesMangerTest.java
b3a48fd227a42ff12368b5c582f93ef51649c3fa
[gpl/argeo-slc.git] / runtime / org.argeo.slc.support.simple / src / test / java / org / argeo / slc / core / execution / DefaultModulesMangerTest.java
1 package org.argeo.slc.core.execution;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import org.argeo.slc.SlcException;
7 import org.argeo.slc.execution.ExecutionFlowDescriptor;
8 import org.argeo.slc.execution.ExecutionModule;
9 import org.argeo.slc.process.RealizedFlow;
10 import org.argeo.slc.process.SlcExecution;
11 import org.argeo.slc.unit.AbstractSpringTestCase;
12 import org.springframework.context.ApplicationContext;
13 import org.springframework.context.ConfigurableApplicationContext;
14 import org.springframework.context.support.ClassPathXmlApplicationContext;
15
16 import junit.framework.TestCase;
17
18 public class DefaultModulesMangerTest extends AbstractSpringTestCase {
19
20 public void testSimpleExecution() throws Exception {
21 //do nothing
22
23 // create an execution
24 SlcExecution execution = new SlcExecution();
25 execution.setUuid("TestUUID");
26 List<RealizedFlow> realizedFlows = new ArrayList<RealizedFlow>();
27 RealizedFlow flow = new RealizedFlow();
28 flow.setModuleName("dummyname");
29 flow.setModuleVersion("dummyversion");
30 ExecutionFlowDescriptor executionFlowDescriptor = new ExecutionFlowDescriptor();
31 executionFlowDescriptor.setName("main");
32 flow.setFlowDescriptor(executionFlowDescriptor);
33 realizedFlows.add(flow);
34 execution.setRealizedFlows(realizedFlows);
35
36 // create a module
37 ApplicationContext applicationContext = prepareExecution("applicationContext.xml");
38 ExecutionModule module = createExecutionModule(applicationContext);
39
40 // create an Execution Module Manager
41 DefaultModulesManager manager = new DefaultModulesManager();
42 List<ExecutionModule> modules = new ArrayList<ExecutionModule>();
43 modules.add(module);
44 manager.setExecutionModules(modules);
45
46 manager.process(execution);
47 }
48
49 protected ExecutionModule createExecutionModule(ApplicationContext applicationContext) {
50 AbstractSpringExecutionModule module = new AbstractSpringExecutionModule() {
51 public String getName() {return "dummyname";}
52 public String getVersion() {return "dummyversion";}
53 };
54 module.setApplicationContext(applicationContext);
55 return module;
56 }
57
58 protected ConfigurableApplicationContext prepareExecution(String applicationContextSuffix) {
59 ConfigurableApplicationContext applicationContext = new ClassPathXmlApplicationContext(inPackage(applicationContextSuffix));
60 applicationContext.start();
61 return applicationContext;
62 }
63
64 }