]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/test/tree/TreeTestResultDaoHibernateTest.java
Replace test result id by UUID
[gpl/argeo-slc.git] / org.argeo.slc.core / src / test / java / org / argeo / slc / hibernate / test / tree / TreeTestResultDaoHibernateTest.java
index 86ae6bbea8c7365706c5d53bb95f1ab058bba920..bb80ddca0c29de9d8667bf5f84566813118df305 100644 (file)
@@ -1,77 +1,74 @@
 package org.argeo.slc.hibernate.test.tree;\r
 \r
+import static org.argeo.slc.core.test.tree.TreeTestResultTestUtils.createCompleteTreeTestResult;\r
+\r
 import java.util.Date;\r
-import java.util.List;\r
 \r
+import org.argeo.slc.core.structure.SimpleSElement;\r
 import org.argeo.slc.core.structure.tree.TreeSPath;\r
-import org.argeo.slc.core.test.NumericTRId;\r
-import org.argeo.slc.core.test.SimpleResultPart;\r
-import org.argeo.slc.core.test.TestStatus;\r
-import org.argeo.slc.core.test.tree.PartSubList;\r
+import org.argeo.slc.core.structure.tree.TreeSRegistry;\r
 import org.argeo.slc.core.test.tree.TreeTestResult;\r
-import org.argeo.slc.dao.structure.tree.TreeSPathDao;\r
-import org.argeo.slc.dao.test.TestResultDao;\r
+import org.argeo.slc.core.test.tree.TreeTestResultTestUtils;\r
 import org.argeo.slc.dao.test.tree.TreeTestResultDao;\r
 import org.argeo.slc.unit.AbstractSpringTestCase;\r
+import org.argeo.slc.unit.test.tree.UnitTestTreeUtil;\r
 \r
 public class TreeTestResultDaoHibernateTest extends AbstractSpringTestCase {\r
 \r
        public void testCreate() {\r
-               TreeSPathDao treeSPathDao = (TreeSPathDao) getContext().getBean(\r
-                               "treeSPathDao");\r
-\r
-               TreeTestResultDao testResultDao = (TreeTestResultDao) getContext().getBean(\r
-                               "testResultDao");\r
-\r
-               String pathParentStr = "/root/testParent";\r
-               String pathStr = pathParentStr + "/test";\r
-               TreeSPath path = TreeSPath.parseToCreatePath(pathStr);\r
-               treeSPathDao.create(path);\r
+               TreeTestResultDao testResultDao = (TreeTestResultDao) getContext()\r
+                               .getBean("testResultDao");\r
 \r
-               TreeTestResult treeTestResult = new TreeTestResult();\r
-               SimpleResultPart partPassed = new SimpleResultPart();\r
-               String msgPassed = "message";\r
-               partPassed.setStatus(TestStatus.PASSED);\r
-               partPassed.setMessage(msgPassed);\r
+               TreeTestResult ttr = createCompleteTreeTestResult();\r
+               testResultDao.create(ttr);\r
 \r
-               SimpleResultPart partFailed = new SimpleResultPart();\r
-               String msgFailed = "too bad";\r
-               partFailed.setStatus(TestStatus.FAILED);\r
-               partFailed.setMessage(msgFailed);\r
-\r
-               NumericTRId trId = new NumericTRId();\r
-               trId.setValue(1l);\r
-               treeTestResult.setNumericResultId(trId);\r
-               treeTestResult.notifyCurrentPath(null, path);\r
-               treeTestResult.addResultPart(partPassed);\r
-               treeTestResult.addResultPart(partFailed);\r
-\r
-               Date closeDate = new Date();\r
-               treeTestResult.setCloseDate(closeDate);\r
+               TreeTestResult ttrPersisted = (TreeTestResult) testResultDao\r
+                               .getTestResult(ttr.getUuid());\r
+               \r
+               UnitTestTreeUtil.assertTreeTestResult(ttr, ttrPersisted);\r
+       }\r
 \r
-               testResultDao.create(treeTestResult);\r
+       public void testUpdate() {\r
+               TreeTestResultDao testResultDao = (TreeTestResultDao) getContext()\r
+                               .getBean("testResultDao");\r
 \r
-               TreeTestResult treeTestResult2 = (TreeTestResult) testResultDao\r
-                               .getTestResult(trId);\r
-               PartSubList list = treeTestResult2.getResultParts().get(path);\r
+               TreeTestResult ttr = createCompleteTreeTestResult();\r
+               testResultDao.create(ttr);\r
 \r
-               assertEquals(2, list.getParts().size());\r
-               SimpleResultPart part0 = (SimpleResultPart) list.getParts().get(0);\r
-               assertEquals(TestStatus.PASSED, part0.getStatus());\r
-               assertEquals(msgPassed, part0.getMessage());\r
+               TreeTestResult ttrUpdated = (TreeTestResult) testResultDao\r
+                               .getTestResult(ttr.getUuid());\r
+               \r
+               // Modifying ttrUpdated\r
+               \r
+               /** this closeDate update commented because \r
+                * the assertTreeTestResult will find a unexpected \r
+                * discrepancy in the date.\r
+                * ttrUpdated.setCloseDate(new Date()); \r
+                */\r
+               \r
+               String pathStr = "/test";\r
+               TreeSPath path = TreeSPath.parseToCreatePath(pathStr);\r
 \r
-               SimpleResultPart part1 = (SimpleResultPart) list.getParts().get(1);\r
-               assertEquals(TestStatus.FAILED, part1.getStatus());\r
-               assertEquals(msgFailed, part1.getMessage());\r
+               TreeSRegistry registry = new TreeSRegistry();\r
+               SimpleSElement elem = new SimpleSElement("Unit Test");\r
+               elem.getTags().put("myTag", "myTagValue");\r
+               registry.register(path, elem);\r
 \r
-               assertEquals(closeDate, treeTestResult2.getCloseDate());\r
+               ttrUpdated.notifyCurrentPath(registry, path);\r
                \r
-               List<TreeTestResult> results = testResultDao.listResults(path);\r
-               assertEquals(1, results.size());\r
-               assertEquals(trId, results.get(0).getTestResultId());\r
+               ttrUpdated.addResultPart(TreeTestResultTestUtils.createSimpleResultPartPassed());\r
+               ttrUpdated.addResultPart(TreeTestResultTestUtils.createSimpleResultPartFailed());\r
+               ttrUpdated.addResultPart(TreeTestResultTestUtils.createSimpleResultPartError());\r
                \r
+               testResultDao.update(ttrUpdated);\r
+               \r
+               // comparison of ttrUpdated and ttrRetrieved\r
+               TreeTestResult ttrRetrieved = (TreeTestResult) testResultDao\r
+               .getTestResult(ttr.getUuid());\r
+               \r
+               UnitTestTreeUtil.assertTreeTestResult(ttrRetrieved, ttrUpdated);\r
        }\r
-\r
+       \r
        @Override\r
        protected String getApplicationContextLocation() {\r
                return "org/argeo/slc/hibernate/applicationContext.xml";\r