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
public class SlcExecutionHibernateTest extends AbstractSpringTestCase {\r
\r
public void testSave() {\r
- SlcExecutionDao dao = getBean("slcExecutionDao");\r
+ SlcExecutionDao dao = getBean(SlcExecutionDao.class);\r
\r
SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution();\r
slcExec.getSteps().add(new SlcExecutionStep("LOG", "A log line"));\r
slcExecPersisted.getSteps().get(1));\r
}\r
\r
+ public void testModify() {\r
+ SlcExecutionDao dao = getBean(SlcExecutionDao.class);\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)\r
+ .getLogLines();\r
+ for (String logLine : logLineListStep0)\r
+ logLine = logLine + "appended Log text";\r
+\r
+ slcExecRetrieved.getSteps().get(0).setLogLines(logLineListStep0);\r
+ slcExecRetrieved.getSteps().add(\r
+ 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,\r
+ slcExecUpdated);\r
+ assertEquals(3, slcExecUpdated.getSteps().size());\r
+ SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps()\r
+ .get(0), slcExecRetrieved.getSteps().get(0));\r
+ SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps()\r
+ .get(1), slcExecRetrieved.getSteps().get(1));\r
+ SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps()\r
+ .get(2), slcExecRetrieved.getSteps().get(2));\r
+ }\r
+\r
@Override\r
protected String getApplicationContextLocation() {\r
return "org/argeo/slc/hibernate/applicationContext.xml";\r