1 package org
.argeo
.slc
.unit
.test
.tree
;
3 import static junit
.framework
.Assert
.assertEquals
;
4 import static junit
.framework
.Assert
.assertNotNull
;
5 import static junit
.framework
.Assert
.assertNull
;
6 import static junit
.framework
.Assert
.fail
;
7 import static org
.argeo
.slc
.unit
.UnitUtils
.assertDateSec
;
9 import org
.argeo
.slc
.core
.structure
.SimpleSElement
;
10 import org
.argeo
.slc
.core
.structure
.tree
.TreeSPath
;
11 import org
.argeo
.slc
.core
.test
.SimpleResultPart
;
12 import org
.argeo
.slc
.core
.test
.TestResultPart
;
13 import org
.argeo
.slc
.core
.test
.tree
.PartSubList
;
14 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResult
;
16 /** Utilities for unit tests. */
17 public class UnitTestTreeUtil
{
18 public static void assertTreeTestResult(TreeTestResult expected
,
19 TreeTestResult reached
) {
20 assertEquals(expected
.getTestResultId(), reached
.getTestResultId());
21 assertDateSec(expected
.getCloseDate(), reached
.getCloseDate());
23 assertEquals(expected
.getResultParts().size(), reached
.getResultParts()
25 for (TreeSPath path
: expected
.getResultParts().keySet()) {
26 PartSubList lstExpected
= expected
.getResultParts().get(path
);
27 PartSubList lstReached
= expected
.getResultParts().get(path
);
28 if (lstReached
== null) {
29 fail("No result for path " + path
);
32 assertPartSubList(lstExpected
, lstReached
);
35 assertEquals(expected
.getElements().size(), reached
.getElements()
37 for (TreeSPath path
: expected
.getElements().keySet()) {
38 // String nameExpected = expected.getElements().get(path);
39 // String nameReached = expected.getElements().get(path);
40 SimpleSElement elemExpected
= (SimpleSElement
) expected
41 .getElements().get(path
);
42 SimpleSElement elemReached
= (SimpleSElement
) expected
43 .getElements().get(path
);
44 assertNotNull(elemReached
);
45 assertElements(elemExpected
, elemReached
);
50 public static void assertElements(SimpleSElement expected
,
51 SimpleSElement reached
) {
52 assertEquals(expected
.getLabel(), reached
.getLabel());
53 assertEquals(expected
.getTags().size(), reached
.getTags().size());
54 for (String tagName
: expected
.getTags().keySet()) {
55 String expectedTagValue
= expected
.getTags().get(tagName
);
56 String reachedTagValue
= reached
.getTags().get(tagName
);
57 assertNotNull(reachedTagValue
);
58 assertEquals(expectedTagValue
, reachedTagValue
);
62 public static void assertPartSubList(PartSubList lstExpected
,
63 PartSubList lstReached
) {
64 if (lstExpected
.getSlcExecutionUuid() == null) {
65 assertNull(lstReached
.getSlcExecutionUuid());
67 assertEquals(lstExpected
.getSlcExecutionUuid(), lstReached
68 .getSlcExecutionUuid());
71 if (lstExpected
.getSlcExecutionStepUuid() == null) {
72 assertNull(lstReached
.getSlcExecutionStepUuid());
74 assertEquals(lstExpected
.getSlcExecutionStepUuid(), lstReached
75 .getSlcExecutionStepUuid());
78 assertEquals(lstExpected
.getParts().size(), lstReached
.getParts()
80 for (int i
= 0; i
< lstExpected
.getParts().size(); i
++) {
81 assertPart(lstExpected
.getParts().get(i
), lstReached
.getParts()
87 * Assert one part of a tree test result.
89 * @deprecated use {@link #assertPart(TestResultPart, TestResultPart)}
92 public static void assertPart(TreeTestResult testResult
, String pathStr
,
93 int index
, Integer status
, String message
) {
94 TreeSPath path
= TreeSPath
.parseToCreatePath(pathStr
);
95 PartSubList list
= testResult
.getResultParts().get(path
);
97 fail("No result for path " + path
);
100 if (index
>= list
.getParts().size()) {
101 fail("Not enough parts.");
103 SimpleResultPart part
= (SimpleResultPart
) list
.getParts().get(index
);
104 assertPart(part
, status
, message
, null);
107 public static void assertPart(TestResultPart expected
,
108 TestResultPart reached
) {
109 assertPart(reached
, expected
.getStatus(), expected
.getMessage(),
110 expected
.getException());
113 /** Assert one part of a tree test result. */
114 private static void assertPart(TestResultPart part
, Integer status
,
115 String message
, Exception exception
) {
116 assertEquals(status
, part
.getStatus());
117 assertEquals(message
, part
.getMessage());
118 if (exception
== null) {
119 assertNull(part
.getException());
121 assertEquals(exception
, part
.getException());
125 /** Makes sure this is a singleton */
126 private UnitTestTreeUtil() {