1 package org
.argeo
.slc
.hibernate
.test
.tree
;
3 import static org
.argeo
.slc
.core
.test
.tree
.TreeTestResultTestUtils
.createCompleteTreeTestResult
;
4 import static org
.argeo
.slc
.core
.test
.tree
.TreeTestResultTestUtils
.createSimpleTreeTestResult
;
8 import org
.argeo
.slc
.core
.structure
.SimpleSElement
;
9 import org
.argeo
.slc
.core
.structure
.tree
.TreeSPath
;
10 import org
.argeo
.slc
.core
.structure
.tree
.TreeSRegistry
;
11 import org
.argeo
.slc
.core
.test
.SimpleResultPart
;
12 import org
.argeo
.slc
.core
.test
.TestStatus
;
13 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResult
;
14 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResultTestUtils
;
15 import org
.argeo
.slc
.dao
.test
.tree
.TreeTestResultDao
;
16 import org
.argeo
.slc
.unit
.AbstractSpringTestCase
;
17 import org
.argeo
.slc
.unit
.test
.tree
.UnitTestTreeUtil
;
19 public class TreeTestResultDaoHibernateTest
extends AbstractSpringTestCase
{
20 private TreeTestResultDao testResultDao
= null;
24 testResultDao
= (TreeTestResultDao
) getContext().getBean(
28 public void testCreate() {
30 TreeTestResult ttr
= createCompleteTreeTestResult();
31 testResultDao
.create(ttr
);
33 TreeTestResult ttrPersisted
= (TreeTestResult
) testResultDao
34 .getTestResult(ttr
.getUuid());
36 UnitTestTreeUtil
.assertTreeTestResult(ttr
, ttrPersisted
);
39 public void testUpdate() {
40 TreeTestResult ttr
= createCompleteTreeTestResult();
41 testResultDao
.create(ttr
);
43 TreeTestResult ttrUpdated
= (TreeTestResult
) testResultDao
44 .getTestResult(ttr
.getUuid());
46 // Modifying ttrUpdated
49 * this closeDate update commented because the assertTreeTestResult will
50 * find a unexpected discrepancy in the date.
51 * ttrUpdated.setCloseDate(new Date());
54 String pathStr
= "/test";
55 TreeSPath path
= TreeSPath
.parseToCreatePath(pathStr
);
57 TreeSRegistry registry
= new TreeSRegistry();
58 SimpleSElement elem
= new SimpleSElement("Unit Test");
59 elem
.getTags().put("myTag", "myTagValue");
60 registry
.register(path
, elem
);
62 ttrUpdated
.notifyCurrentPath(registry
, path
);
64 ttrUpdated
.addResultPart(TreeTestResultTestUtils
65 .createSimpleResultPartPassed());
66 ttrUpdated
.addResultPart(TreeTestResultTestUtils
67 .createSimpleResultPartFailed());
68 ttrUpdated
.addResultPart(TreeTestResultTestUtils
69 .createSimpleResultPartError());
71 testResultDao
.update(ttrUpdated
);
73 // comparison of ttrUpdated and ttrRetrieved
74 TreeTestResult ttrRetrieved
= (TreeTestResult
) testResultDao
75 .getTestResult(ttr
.getUuid());
77 UnitTestTreeUtil
.assertTreeTestResult(ttrRetrieved
, ttrUpdated
);
80 public void testMultipleUpdateScenario() throws Exception
{
81 TreeSRegistry registry
= new TreeSRegistry();
83 TreeSPath path
= new TreeSPath("/root/test");
84 SimpleSElement elem
= new SimpleSElement("Unit Test");
85 elem
.getTags().put("myTag", "myTagValue");
86 registry
.register(path
, elem
);
88 TreeTestResult ttr
= createSimpleTreeTestResult();
89 ttr
.notifyCurrentPath(registry
, path
);
90 ttr
.addResultPart(new SimpleResultPart(TestStatus
.PASSED
,"First test"));
92 testResultDao
.create(ttr
);
94 path
= new TreeSPath("/root/test2/subtest");
95 elem
= new SimpleSElement("Sub Test");
96 elem
.getTags().put("myTag", "myTagValue");
97 registry
.register(path
, elem
);
99 ttr
.notifyCurrentPath(registry
, path
);
100 ttr
.addResultPart(new SimpleResultPart(TestStatus
.PASSED
,"Second test"));
102 testResultDao
.update(ttr
);
104 ttr
.notifyCurrentPath(registry
, path
);
105 ttr
.addResultPart(new SimpleResultPart(TestStatus
.PASSED
,"Third test with same path"));
107 testResultDao
.update(ttr
);
111 testResultDao
.close(ttr
.getUuid(), ttr
.getCloseDate());
115 protected String
getApplicationContextLocation() {
116 return "org/argeo/slc/hibernate/applicationContext.xml";