X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Funit%2Ftest%2Ftree%2FUnitTestTreeUtil.java;h=1862055fa7607fa413fdbd3ead8e0e0e3c8a2431;hb=5978e7e4f44af177846149d60cf5ff6e2d7462bf;hp=d1cc9631e10fe5414c01eeacef4e77a0b09e2835;hpb=a7e8f19d1411b48aeef694b6f0cc25104e77d8aa;p=gpl%2Fargeo-slc.git 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..1862055fa 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 @@ -1,10 +1,15 @@ package org.argeo.slc.unit.test.tree; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertNotNull; import static junit.framework.Assert.assertNull; import static junit.framework.Assert.fail; +import static org.argeo.slc.unit.UnitUtils.assertDateSec; +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; @@ -13,10 +18,12 @@ import org.argeo.slc.core.test.tree.TreeTestResult; /** Utilities for unit tests. */ public class UnitTestTreeUtil { + private final static Log log = LogFactory.getLog(UnitTestTreeUtil.class); + public static void assertTreeTestResult(TreeTestResult expected, TreeTestResult reached) { - assertEquals(expected.getTestResultId(), reached.getTestResultId()); - assertEquals(expected.getCloseDate(), reached.getCloseDate()); + assertEquals(expected.getUuid(), reached.getUuid()); + assertDateSec(expected.getCloseDate(), reached.getCloseDate()); assertEquals(expected.getResultParts().size(), reached.getResultParts() .size()); @@ -30,33 +37,35 @@ 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 assertPartSubList(PartSubList lstExpected, - PartSubList lstReached) { - if (lstExpected.getSlcExecutionUuid() == null) { - assertNull(lstReached.getSlcExecutionUuid()); - } else { - assertEquals(lstExpected.getSlcExecutionUuid(), lstReached - .getSlcExecutionUuid()); - } - - if (lstExpected.getSlcExecutionStepUuid() == null) { - assertNull(lstReached.getSlcExecutionStepUuid()); - } else { - assertEquals(lstExpected.getSlcExecutionStepUuid(), lstReached - .getSlcExecutionStepUuid()); + 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) { assertEquals(lstExpected.getParts().size(), lstReached.getParts() .size()); for (int i = 0; i < lstExpected.getParts().size(); i++) { @@ -65,15 +74,10 @@ public class UnitTestTreeUtil { } } - /** - * Assert one part of a tree test result. - * - * @deprecated use {@link #assertPart(TestResultPart, TestResultPart)} - * instead - */ + /** Asserts one part of a tree test result */ public static void assertPart(TreeTestResult testResult, String pathStr, int index, Integer status, String message) { - TreeSPath path = TreeSPath.parseToCreatePath(pathStr); + TreeSPath path = new TreeSPath(pathStr); PartSubList list = testResult.getResultParts().get(path); if (list == null) { fail("No result for path " + path); @@ -83,25 +87,58 @@ public class UnitTestTreeUtil { fail("Not enough parts."); } SimpleResultPart part = (SimpleResultPart) list.getParts().get(index); - assertPart(part, status, message, null); + assertPart(part, status, message, null, part.getTestRunUuid(), true); } public static void assertPart(TestResultPart expected, TestResultPart reached) { + String expectedTestRunUuid = null; + if (expected instanceof SimpleResultPart) { + expectedTestRunUuid = ((SimpleResultPart) expected) + .getTestRunUuid(); + } + assertPart(reached, expected.getStatus(), expected.getMessage(), - expected.getException()); + expected.getExceptionMessage(), expectedTestRunUuid, false); } /** Assert one part of a tree test result. */ private static void assertPart(TestResultPart part, Integer status, - String message, Exception exception) { + String message, String exceptionDescription, + String expectedTestRunUuid, boolean skipExceptionMessage) { assertEquals(status, part.getStatus()); + + if (log.isTraceEnabled()) { + log.trace("Expected message:" + message); + log.trace("Reached message:" + part.getMessage()); + } assertEquals(message, part.getMessage()); - if (exception == null) { - assertNull(part.getException()); + if (!skipExceptionMessage) { + if (exceptionDescription == null) { + assertNull(part.getExceptionMessage()); + } else { + if (log.isTraceEnabled()) { + log.trace("Expected exception message:" + + exceptionDescription); + log.trace("Reached exception message:" + + part.getExceptionMessage()); + } + + assertEquals(exceptionDescription, part.getExceptionMessage()); + } + } + + if (expectedTestRunUuid != null) { + SimpleResultPart reachedPart = (SimpleResultPart) part; + assertNotNull(reachedPart.getTestRunUuid()); + assertEquals(expectedTestRunUuid, reachedPart.getTestRunUuid()); } else { - assertEquals(exception, part.getException()); + if (part instanceof SimpleResultPart) { + assertNull(((SimpleResultPart) part).getTestRunUuid()); + } + } + } /** Makes sure this is a singleton */