package org.argeo.slc.hibernate.process;\r
\r
+import java.util.List;\r
+\r
import org.argeo.slc.core.process.SlcExecution;\r
import org.argeo.slc.core.process.SlcExecutionStep;\r
import org.argeo.slc.core.process.SlcExecutionTestUtils;\r
slcExecPersisted.getSteps().get(1));\r
}\r
\r
+ public void testModify() {\r
+ SlcExecutionDao dao = getBean("slcExecutionDao");\r
+\r
+ // slcExecution Creation \r
+ SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution();\r
+ slcExec.getSteps().add(new SlcExecutionStep("LOG", "A log line"));\r
+ slcExec.getSteps().add(new SlcExecutionStep("LOG", "Two log\nlines"));\r
+\r
+ dao.create(slcExec);\r
+ \r
+ // slcExecution retrieval and update \r
+ SlcExecution slcExecRetrieved = dao.getSlcExecution(slcExec.getUuid());\r
+ \r
+ List<String> logLineListStep0 = slcExecRetrieved.getSteps().get(0).getLogLines();\r
+ for (String logLine : logLineListStep0) \r
+ logLine = logLine + "appended Log text";\r
+ \r
+ slcExecRetrieved.getSteps().get(0).setLogLines(logLineListStep0);\r
+ slcExecRetrieved.getSteps().add(new SlcExecutionStep("LOG", "Three \n log \n lines"));\r
+ \r
+ dao.update(slcExecRetrieved);\r
+ \r
+ // updated slcExecution retrieval and comparison \r
+ SlcExecution slcExecUpdated = dao.getSlcExecution(slcExec.getUuid()); \r
+ \r
+ SlcExecutionTestUtils.assertSlcExecution(slcExecRetrieved, slcExecUpdated);\r
+ assertEquals(3, slcExecUpdated.getSteps().size());\r
+ SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps().get(0),\r
+ slcExecRetrieved.getSteps().get(0));\r
+ SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps().get(1),\r
+ slcExecRetrieved.getSteps().get(1));\r
+ SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps().get(2),\r
+ slcExecRetrieved.getSteps().get(2));\r
+ }\r
+\r
@Override\r
protected String getApplicationContextLocation() {\r
return "org/argeo/slc/hibernate/applicationContext.xml";\r