X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.core%2Fsrc%2Ftest%2Fjava%2Forg%2Fargeo%2Fslc%2Fcore%2Ftest%2Ftree%2FTreeTestResultCastorTest.java;h=aec7a68b40aab5935c28d06104fda662aac61e98;hb=3b05ea34a3ca2009913736a636c1d3d462d697a2;hp=8479c95ca5a91622675aab7e9d2989304e28a669;hpb=ff5078359b2bfda024f7d39a471918c75dcf27f0;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultCastorTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultCastorTest.java index 8479c95ca..aec7a68b4 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultCastorTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultCastorTest.java @@ -4,13 +4,20 @@ import org.springframework.oxm.Marshaller; import org.springframework.oxm.Unmarshaller; import org.springframework.xml.transform.StringResult; import org.springframework.xml.transform.StringSource; -import org.springframework.xml.xsd.XsdSchema; +import org.springframework.xml.validation.XmlValidator; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.argeo.slc.core.test.tree.TreeTestResultTestUtils.createCompleteTreeTestResult; +import static org.argeo.slc.unit.UnitUtils.assertDateSec; +import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createCompleteTreeTestResult; +import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartRequest; +import org.argeo.slc.core.structure.tree.TreeSPath; +import org.argeo.slc.core.test.SimpleResultPart; +import org.argeo.slc.msg.test.tree.CloseTreeTestResultRequest; +import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest; +import org.argeo.slc.msg.test.tree.ResultPartRequest; import org.argeo.slc.unit.AbstractSpringTestCase; import org.argeo.slc.unit.UnitXmlUtils; import org.argeo.slc.unit.test.tree.UnitTestTreeUtil; @@ -18,25 +25,76 @@ import org.argeo.slc.unit.test.tree.UnitTestTreeUtil; public class TreeTestResultCastorTest extends AbstractSpringTestCase { private Log log = LogFactory.getLog(getClass()); + private Marshaller marshaller; + private Unmarshaller unmarshaller; + + @Override + public void setUp() { + marshaller = getBean(Marshaller.class); + unmarshaller = getBean(Unmarshaller.class); + } + public void testMarshUnmarsh() throws Exception { - Marshaller marshaller = getBean("marshaller"); - Unmarshaller unmarshaller = getBean("marshaller"); + TreeTestResult ttr = createCompleteTreeTestResult(); + + StringResult xml = marshallAndValidate(ttr); + + TreeTestResult ttrUnm = (TreeTestResult) unmarshaller + .unmarshal(new StringSource(xml.toString())); + + UnitTestTreeUtil.assertTreeTestResult(ttr, ttrUnm); + } + + public void testCreateTreeTestResultRequest() throws Exception { + CreateTreeTestResultRequest req = new CreateTreeTestResultRequest(); + req.setTreeTestResult(createCompleteTreeTestResult()); + + StringResult xml = marshallAndValidate(req); + + CreateTreeTestResultRequest reqUnm = (CreateTreeTestResultRequest) unmarshaller + .unmarshal(new StringSource(xml.toString())); + UnitTestTreeUtil.assertTreeTestResult(req.getTreeTestResult(), reqUnm + .getTreeTestResult()); + } + + public void testResultPartRequest() throws Exception { TreeTestResult ttr = createCompleteTreeTestResult(); + ResultPartRequest req = createSimpleResultPartRequest(ttr); - StringResult xml = new StringResult(); - marshaller.marshal(ttr, xml); + StringResult xml = marshallAndValidate(req); + + ResultPartRequest reqUnm = (ResultPartRequest) unmarshaller + .unmarshal(new StringSource(xml.toString())); - log.info("Marshalled TreeTestResult: " + xml); + UnitTestTreeUtil + .assertPart(req.getResultPart(), reqUnm.getResultPart()); + } - XsdSchema schema = getBean("schema"); - UnitXmlUtils.assertXsdSchemaValidation(schema, new StringSource(xml - .toString())); + public void testCloseTreeTestResultRequest() throws Exception { + TreeTestResult ttr = createCompleteTreeTestResult(); + ttr.close(); - TreeTestResult ttrUnm = (TreeTestResult) unmarshaller + CloseTreeTestResultRequest req = new CloseTreeTestResultRequest(ttr + .getUuid(), ttr.getCloseDate()); + + StringResult xml = marshallAndValidate(req); + + CloseTreeTestResultRequest reqUnm = (CloseTreeTestResultRequest) unmarshaller .unmarshal(new StringSource(xml.toString())); - UnitTestTreeUtil.assertTreeTestResult(ttr, ttrUnm); + assertEquals(ttr.getUuid(), reqUnm.getResultUuid()); + assertDateSec(ttr.getCloseDate(), ttr.getCloseDate()); + } + + private StringResult marshallAndValidate(Object obj) throws Exception { + StringResult xml = new StringResult(); + marshaller.marshal(obj, xml); + + log.info("Marshalled ResultPart Request: " + xml); + UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class), + new StringSource(xml.toString())); + return xml; } }