@Test
public void testSubProcess() {
LocalDateTime now = new LocalDateTime();
ExecutableWorkflow workflow = new ExecutableWorkflow()
.activity(new SubProcess()
.id("runTests")
.inputValue("d", now)
.inputValue("s", "string")
.inputExpression("v", "version")
.subWorkflowSourceId("Run tests")
.subWorkflowId(new WorkflowId(getWorkflowIdInternal())));
workflow = serializeWorkflow(workflow);
assertNotNull(workflow);
SubProcess subProcess = (SubProcess) workflow.getActivities().get(0);
assertEquals(new WorkflowId(getWorkflowIdInternal()), subProcess.getSubWorkflowId());
assertEquals("Run tests", subProcess.getSubWorkflowSourceId());
assertEquals(now, subProcess.getSubWorkflowInputs().get("d").getValue());
assertEquals("string", subProcess.getSubWorkflowInputs().get("s").getValue());
assertEquals("version", subProcess.getSubWorkflowInputs().get("v").getExpression());
}