From: Mathieu Baudier Date: Mon, 28 Apr 2008 20:03:02 +0000 (+0000) Subject: Add elements and tags in tree test result X-Git-Tag: argeo-slc-2.1.7~2964 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=e860e15db1fd6dc797205de434c75a22f6e5f9a4;p=gpl%2Fargeo-slc.git Add elements and tags in tree test result git-svn-id: https://svn.argeo.org/slc/trunk@1076 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/structure/SimpleSElement.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/structure/SimpleSElement.java index 98bf7e319..69c3e0905 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/structure/SimpleSElement.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/structure/SimpleSElement.java @@ -1,5 +1,7 @@ package org.argeo.slc.core.structure; +import java.util.Map; +import java.util.TreeMap; /** * Basic implementation of StructureElement. @@ -10,6 +12,7 @@ public class SimpleSElement implements StructureElement { /** For ORM */ private Long tid; private String label; + private Map tags = new TreeMap(); /** For ORM */ public SimpleSElement() { @@ -42,4 +45,12 @@ public class SimpleSElement implements StructureElement { this.tid = tid; } + public Map getTags() { + return tags; + } + + public void setTags(Map tags) { + this.tags = tags; + } + } diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java index 36233e994..43a360710 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/TreeTestResult.java @@ -45,7 +45,7 @@ public class TreeTestResult implements TestResult, StructureAware, private boolean isClosed = false; private SortedMap resultParts = new TreeMap(); - private SortedMap pathNames = new TreeMap(); + private SortedMap elements = new TreeMap(); private StructureRegistry registry; @@ -96,10 +96,14 @@ public class TreeTestResult implements TestResult, StructureAware, TreeSPath path) { if (registry != null) { for (TreeSPath p : path.getHierarchyAsList()) { - if (!pathNames.containsKey(p)) { + if (!elements.containsKey(p)) { StructureElement elem = registry.getElement(p); if (elem != null) { - pathNames.put(p, elem.getLabel()); + // elements.put(p, elem.getLabel()); + elements.put(p, elem); + } else { + log.warn("An element is already registered for path " + + p); } } } @@ -176,12 +180,12 @@ public class TreeTestResult implements TestResult, StructureAware, } } - public SortedMap getPathNames() { - return pathNames; + public SortedMap getElements() { + return elements; } - public void setPathNames(SortedMap pathNames) { - this.pathNames = pathNames; + public void setElements(SortedMap pathNames) { + this.elements = pathNames; } } diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/test/tree/UnitTestTreeUtil.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/test/tree/UnitTestTreeUtil.java index d1cc9631e..05c56acb6 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/test/tree/UnitTestTreeUtil.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/test/tree/UnitTestTreeUtil.java @@ -5,6 +5,7 @@ import static junit.framework.Assert.assertNotNull; import static junit.framework.Assert.assertNull; import static junit.framework.Assert.fail; +import org.argeo.slc.core.structure.SimpleSElement; import org.argeo.slc.core.structure.tree.TreeSPath; import org.argeo.slc.core.test.SimpleResultPart; import org.argeo.slc.core.test.TestResultPart; @@ -30,17 +31,33 @@ public class UnitTestTreeUtil { assertPartSubList(lstExpected, lstReached); } - assertEquals(expected.getPathNames().size(), reached.getPathNames() + assertEquals(expected.getElements().size(), reached.getElements() .size()); - for (TreeSPath path : expected.getPathNames().keySet()) { - String nameExpected = expected.getPathNames().get(path); - String nameReached = expected.getPathNames().get(path); - assertNotNull(nameReached); - assertEquals(nameExpected, nameReached); + for (TreeSPath path : expected.getElements().keySet()) { + // String nameExpected = expected.getElements().get(path); + // String nameReached = expected.getElements().get(path); + SimpleSElement elemExpected = (SimpleSElement) expected + .getElements().get(path); + SimpleSElement elemReached = (SimpleSElement) expected + .getElements().get(path); + assertNotNull(elemReached); + assertElements(elemExpected, elemReached); } } + public static void assertElements(SimpleSElement expected, + SimpleSElement reached) { + assertEquals(expected.getLabel(), reached.getLabel()); + assertEquals(expected.getTags().size(), reached.getTags().size()); + for (String tagName : expected.getTags().keySet()) { + String expectedTagValue = expected.getTags().get(tagName); + String reachedTagValue = reached.getTags().get(tagName); + assertNotNull(reachedTagValue); + assertEquals(expectedTagValue, reachedTagValue); + } + } + public static void assertPartSubList(PartSubList lstExpected, PartSubList lstReached) { if (lstExpected.getSlcExecutionUuid() == null) { diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/test/tree/mapping.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/test/tree/mapping.xml index dad0725c0..599efeff1 100644 --- a/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/test/tree/mapping.xml +++ b/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/test/tree/mapping.xml @@ -22,15 +22,16 @@ - - + + - - + + @@ -52,6 +53,23 @@ + + + + + + + + + + + + + + + + - + + + + + + \ No newline at end of file diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/test/tree/TreeTestResult.hbm.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/test/tree/TreeTestResult.hbm.xml index 9de6a8045..971469fd1 100644 --- a/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/test/tree/TreeTestResult.hbm.xml +++ b/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/test/tree/TreeTestResult.hbm.xml @@ -29,14 +29,16 @@ unique="true" lazy="false" /> - - + + \ No newline at end of file diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultTestUtils.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultTestUtils.java index 28fdd8fc3..591a1d368 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultTestUtils.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultTestUtils.java @@ -32,7 +32,9 @@ public abstract class TreeTestResultTestUtils { TreeSPath path = TreeSPath.parseToCreatePath(pathStr); TreeSRegistry registry = new TreeSRegistry(); - registry.register(path, new SimpleSElement("Unit Test")); + SimpleSElement elem = new SimpleSElement("Unit Test"); + elem.getTags().put("myTag", "myTagValue"); + registry.register(path, elem); TreeTestResult ttr = createSimpleTreeTestResult(); ttr.notifySlcExecution(slcExecution);