1 package org
.argeo
.slc
.core
.execution
;
3 import java
.util
.ArrayList
;
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
;
16 import junit
.framework
.TestCase
;
18 public class DefaultModulesMangerTest
extends AbstractSpringTestCase
{
20 public void testSimpleExecution() throws Exception
{
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
);
37 ApplicationContext applicationContext
= prepareExecution("applicationContext.xml");
38 ExecutionModule module
= createExecutionModule(applicationContext
);
40 // create an Execution Module Manager
41 DefaultModulesManager manager
= new DefaultModulesManager();
42 List
<ExecutionModule
> modules
= new ArrayList
<ExecutionModule
>();
44 manager
.setExecutionModules(modules
);
46 manager
.process(execution
);
49 protected ExecutionModule
createExecutionModule(ApplicationContext applicationContext
) {
50 AbstractSpringExecutionModule module
= new AbstractSpringExecutionModule() {
51 public String
getName() {return "dummyname";}
52 public String
getVersion() {return "dummyversion";}
54 module
.setApplicationContext(applicationContext
);
58 protected ConfigurableApplicationContext
prepareExecution(String applicationContextSuffix
) {
59 ConfigurableApplicationContext applicationContext
= new ClassPathXmlApplicationContext(inPackage(applicationContextSuffix
));
60 applicationContext
.start();
61 return applicationContext
;