]> git.argeo.org Git - gpl/argeo-slc.git/commitdiff
Update SimpleResultPart structure
authorMathieu Baudier <mbaudier@argeo.org>
Sun, 4 May 2008 09:49:30 +0000 (09:49 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Sun, 4 May 2008 09:49:30 +0000 (09:49 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@1096 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

13 files changed:
org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/SimpleResultPart.java
org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/TestResultPart.java
org.argeo.slc.core/src/main/java/org/argeo/slc/msg/test/tree/ResultPartRequest.java
org.argeo.slc.core/src/main/java/org/argeo/slc/unit/test/tree/UnitTestTreeUtil.java
org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/msg/mapping.xml
org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/spring/applicationContext.xml
org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/test/mapping.xml
org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/test/SimpleResultPart.hbm.xml
org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/test/tree/PartSubList.hbm.xml
org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultCastorTest.java
org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultTestUtils.java
org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultWsIntegrationTest.java
org.argeo.slc.core/src/test/resources/log4j.properties

index 543cc98bb89849cefbbe5b626205fdd169daefdf..ef5512ccf5f2a180b559cb70357f03b6b9524343 100644 (file)
@@ -1,13 +1,5 @@
 package org.argeo.slc.core.test;\r
 \r
-import java.io.IOException;\r
-import java.io.PrintWriter;\r
-import java.io.StringReader;\r
-import java.io.StringWriter;\r
-import java.util.List;\r
-import java.util.Vector;\r
-\r
-import org.apache.commons.io.IOUtils;\r
 \r
 /**\r
  * <p>\r
@@ -29,7 +21,6 @@ public class SimpleResultPart implements TestResultPart, TestStatus,
        private Integer status = ERROR;\r
        private String message;\r
        private String exceptionMessage;\r
-       private List<String> exceptionStackLines = new Vector<String>();\r
 \r
        public SimpleResultPart() {\r
        }\r
@@ -68,8 +59,18 @@ public class SimpleResultPart implements TestResultPart, TestStatus,
                if (exception == null)\r
                        return;\r
 \r
-               this.exceptionMessage = exception.getMessage();\r
+               //this.exceptionMessage = exception.getMessage();\r
 \r
+               StringBuffer buf = new StringBuffer("");\r
+               buf.append(exception.getMessage());\r
+               buf.append('\n');\r
+               for(StackTraceElement elem : exception.getStackTrace()){\r
+                       buf.append(elem.toString()).append('\n');\r
+               }\r
+               \r
+               this.exceptionMessage = buf.toString();\r
+               \r
+/*             \r
                StringWriter writer = null;\r
                StringReader reader = null;\r
                try {\r
@@ -82,7 +83,7 @@ public class SimpleResultPart implements TestResultPart, TestStatus,
                } finally {\r
                        IOUtils.closeQuietly(writer);\r
                        IOUtils.closeQuietly(reader);\r
-               }\r
+               }*/\r
        }\r
 \r
        @Override\r
@@ -121,14 +122,6 @@ public class SimpleResultPart implements TestResultPart, TestStatus,
                testRunUuid = testRun.getUuid();\r
        }\r
 \r
-       public List<String> getExceptionStackLines() {\r
-               return exceptionStackLines;\r
-       }\r
-\r
-       public void setExceptionStackLines(List<String> exceptionStackLines) {\r
-               this.exceptionStackLines = exceptionStackLines;\r
-       }\r
-\r
        public void setExceptionMessage(String exceptionMessage) {\r
                this.exceptionMessage = exceptionMessage;\r
        }\r
index c299da334c3bc9cd3ea3c97ddbcc1cd7248d0c08..fc5749b86c491a2367e428ddc3d74d5447af1d52 100644 (file)
@@ -1,6 +1,5 @@
 package org.argeo.slc.core.test;\r
 \r
-import java.util.List;\r
 \r
 /**\r
  * Part of a test result.\r
@@ -16,6 +15,4 @@ public interface TestResultPart {
 \r
        /** The underlying <code>Exception</code>. Can be null. */\r
        public String getExceptionMessage();\r
-\r
-       public List<String> getExceptionStackLines();\r
 }\r
index 88f4f9f2c9dc2c9dea2ea897bd95f7497f8199c2..71d0fd694165107fe2ed3c5634d955a41f7808c9 100644 (file)
@@ -5,13 +5,12 @@ import java.util.Map;
 import org.argeo.slc.core.structure.StructureElement;\r
 import org.argeo.slc.core.structure.tree.TreeSPath;\r
 import org.argeo.slc.core.test.SimpleResultPart;\r
-import org.argeo.slc.core.test.TestResultPart;\r
 import org.argeo.slc.core.test.TestRunDescriptor;\r
 import org.argeo.slc.core.test.tree.TreeTestResult;\r
 \r
 public class ResultPartRequest {\r
        private String resultUuid;\r
-       private TestResultPart resultPart;\r
+       private SimpleResultPart resultPart;\r
        private TreeSPath path;\r
        private Map<TreeSPath, StructureElement> relatedElements;\r
        private TestRunDescriptor testRunDescriptor;\r
@@ -21,7 +20,7 @@ public class ResultPartRequest {
        }\r
 \r
        public ResultPartRequest(TreeTestResult ttr, TreeSPath path,\r
-                       TestResultPart resultPart) {\r
+                       SimpleResultPart resultPart) {\r
                resultUuid = ttr.getUuid();\r
                this.resultPart = resultPart;\r
                this.path = path;\r
@@ -38,14 +37,16 @@ public class ResultPartRequest {
                this.resultUuid = resultUuid;\r
        }\r
 \r
-       public TestResultPart getResultPart() {\r
+       public SimpleResultPart getResultPart() {\r
                return resultPart;\r
        }\r
 \r
-       public void setResultPart(TestResultPart resultPart) {\r
+       public void setResultPart(SimpleResultPart resultPart) {\r
                this.resultPart = resultPart;\r
        }\r
 \r
+       \r
+       \r
        public TreeSPath getPath() {\r
                return path;\r
        }\r
index cecb57cbeb91db190fc75b8e11abdb3dab5b62d6..2e1ef8a77a49d22ef39d87dba9ce718f8f089db7 100644 (file)
@@ -1,6 +1,7 @@
 package org.argeo.slc.unit.test.tree;\r
 \r
-import java.util.List;\r
+import org.apache.commons.logging.Log;\r
+import org.apache.commons.logging.LogFactory;\r
 \r
 import static junit.framework.Assert.assertEquals;\r
 import static junit.framework.Assert.assertNotNull;\r
@@ -17,6 +18,8 @@ import org.argeo.slc.core.test.tree.TreeTestResult;
 \r
 /** Utilities for unit tests. */\r
 public class UnitTestTreeUtil {\r
+       private final static Log log = LogFactory.getLog(UnitTestTreeUtil.class);\r
+\r
        public static void assertTreeTestResult(TreeTestResult expected,\r
                        TreeTestResult reached) {\r
                assertEquals(expected.getUuid(), reached.getUuid());\r
@@ -89,7 +92,7 @@ public class UnitTestTreeUtil {
                        fail("Not enough parts.");\r
                }\r
                SimpleResultPart part = (SimpleResultPart) list.getParts().get(index);\r
-               assertPart(part, status, message, null, null, part.getTestRunUuid());\r
+               assertPart(part, status, message, null, part.getTestRunUuid());\r
        }\r
 \r
        public static void assertPart(TestResultPart expected,\r
@@ -101,22 +104,30 @@ public class UnitTestTreeUtil {
                }\r
 \r
                assertPart(reached, expected.getStatus(), expected.getMessage(),\r
-                               expected.getExceptionMessage(), expected\r
-                                               .getExceptionStackLines(), expectedTestRunUuid);\r
+                               expected.getExceptionMessage(), expectedTestRunUuid);\r
        }\r
 \r
        /** Assert one part of a tree test result. */\r
        private static void assertPart(TestResultPart part, Integer status,\r
                        String message, String exceptionDescription,\r
-                       List<String> stackLines, String expectedTestRunUuid) {\r
+                       String expectedTestRunUuid) {\r
                assertEquals(status, part.getStatus());\r
+\r
+               if (log.isTraceEnabled()) {\r
+                       log.trace("Expected message:" + message);\r
+                       log.trace("Reached message:" + part.getMessage());\r
+               }\r
                assertEquals(message, part.getMessage());\r
                if (exceptionDescription == null) {\r
                        assertNull(part.getExceptionMessage());\r
                } else {\r
+                       if (log.isTraceEnabled()) {\r
+                               log.trace("Expected exception message:" + exceptionDescription);\r
+                               log.trace("Reached exception message:"\r
+                                               + part.getExceptionMessage());\r
+                       }\r
+\r
                        assertEquals(exceptionDescription, part.getExceptionMessage());\r
-                       assertEquals(stackLines.size(), part.getExceptionStackLines()\r
-                                       .size());\r
                }\r
 \r
                if (expectedTestRunUuid != null) {\r
index b439e06901b4e34c43183b1e36c07a769a3146f8..8ae72a5593bb57dc0defbfc3d8a88dc3b6e85a78 100644 (file)
                <map-to ns-uri="http://argeo.org/projects/slc/schemas"\r
                        ns-prefix="slc" />\r
                <field name="resultUuid" />\r
-               <field name="resultPart">\r
+               <field name="resultPart"\r
+                       type="org.argeo.slc.core.test.SimpleResultPart">\r
                        <bind-xml auto-naming="deriveByClass" />\r
                </field>\r
+\r
                <field name="relatedElements" collection="map">\r
                        <bind-xml name="element" location="related-elements">\r
                                <class name="org.exolab.castor.mapping.MapItem">\r
@@ -42,6 +44,7 @@
                <field name="testRunDescriptor" />\r
        </class>\r
 \r
+\r
        <!-- PROCESS -->\r
        <class name="org.argeo.slc.msg.process.SlcExecutionStepsRequest">\r
                <map-to ns-uri="http://argeo.org/projects/slc/schemas"\r
index e28934089f5a409a49ef7215ae4e79af20f38a48..3d0c03bad4e8a047f248c11296b2e2d70af5e5e1 100644 (file)
@@ -21,6 +21,7 @@
                                </value>\r
                        </list>\r
                </property>\r
+               <property name="whitespacePreserve" value="true"/>\r
        </bean>\r
 \r
 </beans>\r
index 3eead131bce2f363e925605a9fcd5c62ff7e7b0e..03c7c4d1f901a145c598ac5e63163385b74f2ad9 100644 (file)
@@ -7,11 +7,11 @@
                auto-complete="false">\r
                <map-to ns-uri="http://argeo.org/projects/slc/schemas"\r
                        ns-prefix="slc" />\r
-               <field name="testRunUuid"/>\r
-               <field name="slcExecutionUuid"/>\r
-               <field name="slcExecutionStepUuid"/>\r
-               <field name="testResultUuid"/>\r
-               <field name="deployedSytemId"/>\r
+               <field name="testRunUuid" />\r
+               <field name="slcExecutionUuid" />\r
+               <field name="slcExecutionStepUuid" />\r
+               <field name="testResultUuid" />\r
+               <field name="deployedSytemId" />\r
        </class>\r
 \r
        <class name="org.argeo.slc.core.test.tree.TreeTestResult"\r
                <map-to ns-uri="http://argeo.org/projects/slc/schemas"\r
                        ns-prefix="slc" />\r
                <field name="testRunUuid" type="string" />\r
-               <field name="message" type="string" />\r
+               <field name="message" type="string"/>\r
                <field name="status" type="string"\r
                        handler="org.argeo.slc.castor.test.tree.StatusFieldHandler" />\r
-               <field name="exceptionMessage" type="string" />\r
-               <field name="exceptionStackLines" collection="vector"\r
-                       type="string">\r
-                       <bind-xml name="stack-line" location="stack-lines" />\r
-               </field>\r
+               <field name="exceptionMessage" type="string"/>\r
        </class>\r
-       \r
+\r
 </mapping>
\ No newline at end of file
index 2e4587c3c6c6d3d39c7a0537052142709745acec..42f32dfb8f03ab556a5d3728020e2656352cbef1 100644 (file)
                <property name="message" column="MESSAGE" not-null="true" />\r
                <property name="exceptionMessage" column="EXCEPTION_MESSAGE"\r
                        not-null="false" />\r
-               <list name="exceptionStackLines" cascade="all" lazy="false">\r
-                       <key column="RESULT_PART_ID" />\r
-                       <list-index column="INDX" />\r
-                       <element type="string" column="STACK_LINE" />\r
-               </list>\r
        </class>\r
 </hibernate-mapping>
\ No newline at end of file
index 22bd34040539c0108aa5a1a4f31668bb492e8125..1c3c9c9aad18fff0aab273246815d7f5d5b4e68f 100644 (file)
                <list name="parts" cascade="all" lazy="false">\r
                        <key column="PART_SUBLIST_ID" />\r
                        <list-index column="INDX" />\r
-                       <one-to-many\r
-                               class="org.argeo.slc.core.test.SimpleResultPart" />\r
+                       <composite-element\r
+                               class="org.argeo.slc.core.test.SimpleResultPart">\r
+                               <property name="status" column="STATUS" not-null="true" />\r
+                               <property name="message" column="MESSAGE"\r
+                                       not-null="true" />\r
+                               <property name="exceptionMessage"\r
+                                       column="EXCEPTION_MESSAGE" not-null="false" />\r
+                       </composite-element>\r
                </list>\r
        </class>\r
 </hibernate-mapping>
\ No newline at end of file
index f9a42a16ed8e4f37ad520ec5dbf57732a4110b51..1e83dda11f5cf6a3d6799639f3ee4e65bdc45841 100644 (file)
@@ -5,7 +5,6 @@ import org.springframework.oxm.Unmarshaller;
 import org.springframework.xml.transform.StringResult;\r
 import org.springframework.xml.transform.StringSource;\r
 import org.springframework.xml.validation.XmlValidator;\r
-import org.springframework.xml.xsd.XsdSchema;\r
 \r
 import org.apache.commons.logging.Log;\r
 import org.apache.commons.logging.LogFactory;\r
@@ -13,7 +12,7 @@ import org.apache.commons.logging.LogFactory;
 import static org.argeo.slc.core.test.tree.TreeTestResultTestUtils.createCompleteTreeTestResult;\r
 \r
 import org.argeo.slc.core.structure.tree.TreeSPath;\r
-import org.argeo.slc.core.test.TestResultPart;\r
+import org.argeo.slc.core.test.SimpleResultPart;\r
 import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest;\r
 import org.argeo.slc.msg.test.tree.ResultPartRequest;\r
 import org.argeo.slc.unit.AbstractSpringTestCase;\r
@@ -35,13 +34,7 @@ public class TreeTestResultCastorTest extends AbstractSpringTestCase {
        public void testMarshUnmarsh() throws Exception {\r
                TreeTestResult ttr = createCompleteTreeTestResult();\r
 \r
-               StringResult xml = new StringResult();\r
-               marshaller.marshal(ttr, xml);\r
-\r
-               log.info("Marshalled TreeTestResult: " + xml);\r
-\r
-               UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class),\r
-                               new StringSource(xml.toString()));\r
+               StringResult xml = marshallAndValidate(ttr);\r
 \r
                TreeTestResult ttrUnm = (TreeTestResult) unmarshaller\r
                                .unmarshal(new StringSource(xml.toString()));\r
@@ -53,13 +46,7 @@ public class TreeTestResultCastorTest extends AbstractSpringTestCase {
                CreateTreeTestResultRequest req = new CreateTreeTestResultRequest();\r
                req.setTreeTestResult(createCompleteTreeTestResult());\r
 \r
-               StringResult xml = new StringResult();\r
-               marshaller.marshal(req, xml);\r
-\r
-               log.info("Marshalled CreateTreeTestResult Request: " + xml);\r
-\r
-               UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class),\r
-                               new StringSource(xml.toString()));\r
+               StringResult xml = marshallAndValidate(req);\r
 \r
                CreateTreeTestResultRequest reqUnm = (CreateTreeTestResultRequest) unmarshaller\r
                                .unmarshal(new StringSource(xml.toString()));\r
@@ -73,19 +60,13 @@ public class TreeTestResultCastorTest extends AbstractSpringTestCase {
 \r
                TreeSPath path = ttr.getCurrentPath();\r
                PartSubList lst = ttr.getResultParts().get(path);\r
-               //TestResultPart part = lst.getParts().get(lst.getParts().size() - 1);\r
-               TestResultPart part = lst.getParts().get(2);\r
+               // TestResultPart part = lst.getParts().get(lst.getParts().size() - 1);\r
+               SimpleResultPart part = (SimpleResultPart) lst.getParts().get(2);\r
 \r
                ResultPartRequest req = new ResultPartRequest(ttr, path, part);\r
                req.setPath(ttr.getCurrentPath());\r
 \r
-               StringResult xml = new StringResult();\r
-               marshaller.marshal(req, xml);\r
-\r
-               log.info("Marshalled ResultPart Request: " + xml);\r
-\r
-               UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class),\r
-                               new StringSource(xml.toString()));\r
+               StringResult xml = marshallAndValidate(req);\r
 \r
                ResultPartRequest reqUnm = (ResultPartRequest) unmarshaller\r
                                .unmarshal(new StringSource(xml.toString()));\r
@@ -94,4 +75,14 @@ public class TreeTestResultCastorTest extends AbstractSpringTestCase {
                                .assertPart(req.getResultPart(), reqUnm.getResultPart());\r
        }\r
 \r
+       private StringResult marshallAndValidate(Object obj) throws Exception {\r
+               StringResult xml = new StringResult();\r
+               marshaller.marshal(obj, xml);\r
+\r
+               log.info("Marshalled ResultPart Request: " + xml);\r
+\r
+                UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class),\r
+                               new StringSource(xml.toString()));\r
+               return xml;\r
+       }\r
 }\r
index c770d78ae670a81dcddb339fdb6e17edfe99bf27..614367779f05a320423d3bf3403e8b1d5d4c4e1f 100644 (file)
@@ -66,7 +66,7 @@ public abstract class TreeTestResultTestUtils {
 \r
        public static SimpleResultPart createSimpleResultPartPassed() {\r
                SimpleResultPart partPassed = new SimpleResultPart();\r
-               String msgPassed = "message";\r
+               String msgPassed = "message\nnew line";\r
                partPassed.setStatus(TestStatus.PASSED);\r
                partPassed.setMessage(msgPassed);\r
                return partPassed;\r
@@ -82,7 +82,7 @@ public abstract class TreeTestResultTestUtils {
 \r
        public static SimpleResultPart createSimpleResultPartError() {\r
                SimpleResultPart partFailed = new SimpleResultPart();\r
-               String msgFailed = "crashed";\r
+               String msgFailed = "crashed\nanother line";\r
                partFailed.setStatus(TestStatus.ERROR);\r
                partFailed.setMessage(msgFailed);\r
                partFailed.setException(new Exception("Test Exception"));\r
index 211a7f4f5b7d10838f426c23ebdca4ccf28aef65..d31b5f8e2684b8c6787435df5e541de6fd1f3531 100644 (file)
@@ -13,7 +13,7 @@ import org.argeo.slc.unit.AbstractSpringTestCase;
 public class TreeTestResultWsIntegrationTest extends AbstractSpringTestCase {
        private Log log = LogFactory.getLog(getClass());
 
-       public void testSendSlcExecutionrequest() {
+       public void testCreateTreeTestResultRequest() {
                WebServiceTemplate template = getBean(WebServiceTemplate.class);
                CreateTreeTestResultRequest req = new CreateTreeTestResultRequest();
                req.setTreeTestResult(createCompleteTreeTestResult());
index 9f479e35a0da63e23c1a124b0420b7e895785672..93b015dc0ac353908c498febb04bf67d1090c289 100644 (file)
@@ -4,7 +4,7 @@ log4j.rootLogger=INFO, console
 ## Levels\r
 # Slc\r
 log4j.logger.org.argeo.slc=DEBUG\r
-log4j.logger.org.argeo.slc.core.process=DEBUG\r
+log4j.logger.org.argeo.slc.unit=TRACE\r
 \r
 # Castor\r
 log4j.logger.org.exolab.castor=WARN\r