]> 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
ExecutionParameterPostProcessor improved (placeholder resolved for each instance)
[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.HashMap;
5 import java.util.List;
6 import java.util.Map;
7
8 import org.argeo.slc.SlcException;
9 import org.argeo.slc.execution.ExecutionFlowDescriptor;
10 import org.argeo.slc.execution.ExecutionModule;
11 import org.argeo.slc.process.RealizedFlow;
12 import org.argeo.slc.process.SlcExecution;
13 import org.argeo.slc.unit.AbstractSpringTestCase;
14 import org.springframework.context.ApplicationContext;
15 import org.springframework.context.ConfigurableApplicationContext;
16 import org.springframework.context.support.ClassPathXmlApplicationContext;
17
18 import junit.framework.TestCase;
19
20 public class DefaultModulesMangerTest extends AbstractSpringTestCase {
21
22 public void testSimpleExecution() throws Exception {
23 //do nothing
24
25 // create an execution
26 SlcExecution execution = new SlcExecution();
27 execution.setUuid("TestUUID");
28 List<RealizedFlow> realizedFlows = new ArrayList<RealizedFlow>();
29 RealizedFlow flow = new RealizedFlow();
30 flow.setModuleName("dummyname");
31 flow.setModuleVersion("dummyversion");
32 ExecutionFlowDescriptor executionFlowDescriptor = new ExecutionFlowDescriptor();
33 executionFlowDescriptor.setName("main");
34 Map<String, Object> values = new HashMap<String, Object>();
35 values.put("testKey", new PrimitiveValue(
36 PrimitiveSpecAttribute.TYPE_INTEGER, 22));
37 executionFlowDescriptor.setValues(values);
38 flow.setFlowDescriptor(executionFlowDescriptor);
39 realizedFlows.add(flow);
40 execution.setRealizedFlows(realizedFlows);
41
42 // create a module
43 ApplicationContext applicationContext = prepareExecution("applicationContext.xml");
44 // ExecutionModule module = createExecutionModule(applicationContext);
45 ExecutionModule module = (ExecutionModule) applicationContext.getBean("executionModule_1");
46
47 // create an Execution Module Manager
48 DefaultModulesManager manager = new DefaultModulesManager();
49 List<ExecutionModule> modules = new ArrayList<ExecutionModule>();
50 modules.add(module);
51 manager.setExecutionModules(modules);
52
53 manager.process(execution);
54 }
55
56 protected ExecutionModule createExecutionModule(ApplicationContext applicationContext) {
57 AbstractSpringExecutionModule module = new AbstractSpringExecutionModule() {
58 public String getName() {return "dummyname";}
59 public String getVersion() {return "dummyversion";}
60 };
61 module.setExecutionContext(new MapExecutionContext());
62 module.setApplicationContext(applicationContext);
63 return module;
64 }
65
66 protected ConfigurableApplicationContext prepareExecution(String applicationContextSuffix) {
67 ConfigurableApplicationContext applicationContext = new ClassPathXmlApplicationContext(inPackage(applicationContextSuffix));
68 applicationContext.start();
69 return applicationContext;
70 }
71
72 }