From: Mathieu Baudier Date: Wed, 30 Apr 2008 10:58:26 +0000 (+0000) Subject: Improve Spring templates and defaults X-Git-Tag: argeo-slc-2.1.7~2954 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=a59910934f488093ac8855896103c9bc9612a02b;p=gpl%2Fargeo-slc.git Improve Spring templates and defaults Add WS client validation Improve Spring tests with powerful getBean based on class git-svn-id: https://svn.argeo.org/slc/trunk@1086 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java index 06c6cf6b5..5166242b4 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java @@ -1,10 +1,15 @@ package org.argeo.slc.unit; +import java.util.Map; + import junit.framework.TestCase; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.argeo.slc.core.SlcException; +import org.argeo.slc.core.process.SlcExecution; + /** Helper for tests using a Spring application co,text. */ public abstract class AbstractSpringTestCase extends TestCase { private ApplicationContext context; @@ -21,10 +26,20 @@ public abstract class AbstractSpringTestCase extends TestCase { } return context; } - + /** Returns a bean from the underlying context */ - protected T getBean(String beanId){ - return (T)getContext().getBean(beanId); + protected T getBean(String beanId) { + return (T) getContext().getBean(beanId); + } + + protected T getBean(Class clss) { + Map map = getContext().getBeansOfType(clss); + if (map.size() == 1) { + return map.values().iterator().next(); + } else { + throw new SlcException("Cannot retrieve a unique bean of type " + + clss); + } } /** diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/UnitXmlUtils.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/UnitXmlUtils.java index 710b7e817..af6f92320 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/UnitXmlUtils.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/UnitXmlUtils.java @@ -19,12 +19,17 @@ public abstract class UnitXmlUtils { public static void assertXsdSchemaValidation(XsdSchema schema, Source source) throws IOException { XmlValidator validator = schema.createValidator(); + assertXmlValidation(validator, source); + } + + public static void assertXmlValidation(XmlValidator validator, Source source) + throws IOException { SAXParseException[] exceptions = validator.validate(source); if (exceptions.length != 0) { for (SAXParseException ex : exceptions) { log.error(ex.getMessage()); } - TestCase.fail("Could not validate with schema " + schema); + TestCase.fail("Could not validate"); } } diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/ws/client/ValidatingClientInterceptor.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/ws/client/ValidatingClientInterceptor.java new file mode 100644 index 000000000..ff439d824 --- /dev/null +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/ws/client/ValidatingClientInterceptor.java @@ -0,0 +1,90 @@ +package org.argeo.slc.ws.client; + +import java.io.IOException; + +import javax.xml.transform.Source; + +import junit.framework.TestCase; + +import org.springframework.ws.client.WebServiceClientException; +import org.springframework.ws.client.WebServiceIOException; +import org.springframework.ws.client.support.interceptor.ClientInterceptor; +import org.springframework.ws.context.MessageContext; +import org.springframework.xml.validation.XmlValidator; +import org.xml.sax.SAXParseException; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +public class ValidatingClientInterceptor implements ClientInterceptor { + private final static Log log = LogFactory + .getLog(ValidatingClientInterceptor.class); + + private Boolean validateRequest = true; + private Boolean validateResponse = false; + private XmlValidator validator = null; + + public boolean handleFault(MessageContext messageContext) + throws WebServiceClientException { + return true; + } + + public boolean handleRequest(MessageContext messageContext) + throws WebServiceClientException { + if (validateRequest) { + if (messageContext.getRequest() == null) + return true; + + Source source = messageContext.getRequest().getPayloadSource(); + try { + return validate(source); + } catch (IOException e) { + throw new WebServiceIOException("Cannot validate request", e); + } + } else { + return true; + } + } + + public boolean handleResponse(MessageContext messageContext) + throws WebServiceClientException { + if (validateResponse) { + if (messageContext.getResponse() == null) + return true; + + Source source = messageContext.getResponse().getPayloadSource(); + try { + return validate(source); + } catch (IOException e) { + throw new WebServiceIOException("Cannot validate response", e); + } + } else { + return true; + } + } + + protected boolean validate(Source source) throws IOException { + SAXParseException[] exceptions = validator.validate(source); + if (exceptions.length != 0) { + for (SAXParseException ex : exceptions) { + log.error(ex.getMessage()); + } + return false; + } else { + return true; + } + } + + public void setValidateRequest(Boolean validateRequest) { + this.validateRequest = validateRequest; + } + + public void setValidateResponse(Boolean validateResponse) { + this.validateResponse = validateResponse; + } + + public void setValidator(XmlValidator validator) { + this.validator = validator; + } + +} diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/spring/applicationContext.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/spring/applicationContext.xml new file mode 100644 index 000000000..d7c089f8f --- /dev/null +++ b/org.argeo.slc.core/src/main/resources/org/argeo/slc/castor/spring/applicationContext.xml @@ -0,0 +1,20 @@ + + + + + + + classpath:org/argeo/slc/castor/process/mapping.xml + + + classpath:org/argeo/slc/castor/test/tree/mapping.xml + + + + + + diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/spring/applicationContext.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/spring/applicationContext.xml new file mode 100644 index 000000000..a840e0a2d --- /dev/null +++ b/org.argeo.slc.core/src/main/resources/org/argeo/slc/hibernate/spring/applicationContext.xml @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + org/argeo/slc/hibernate/structure/SimpleSElement.hbm.xml + + + org/argeo/slc/hibernate/structure/tree/TreeSPath.hbm.xml + + + org/argeo/slc/hibernate/structure/tree/TreeSRegistry.hbm.xml + + + org/argeo/slc/hibernate/test/NumericTRId.hbm.xml + + + org/argeo/slc/hibernate/test/SimpleResultPart.hbm.xml + + + org/argeo/slc/hibernate/test/tree/TreeTestResult.hbm.xml + + + org/argeo/slc/hibernate/test/tree/PartSubList.hbm.xml + + + org/argeo/slc/hibernate/process/SlcExecution.hbm.xml + + + org/argeo/slc/hibernate/process/SlcExecutionStep.hbm.xml + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/spring/templates.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/spring/templates.xml deleted file mode 100644 index dc4cdd500..000000000 --- a/org.argeo.slc.core/src/main/resources/org/argeo/slc/spring/templates.xml +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - - - - org/argeo/slc/hibernate/structure/SimpleSElement.hbm.xml - - - org/argeo/slc/hibernate/structure/tree/TreeSPath.hbm.xml - - - org/argeo/slc/hibernate/structure/tree/TreeSRegistry.hbm.xml - - - org/argeo/slc/hibernate/test/NumericTRId.hbm.xml - - - org/argeo/slc/hibernate/test/SimpleResultPart.hbm.xml - - - org/argeo/slc/hibernate/test/tree/TreeTestResult.hbm.xml - - - org/argeo/slc/hibernate/test/tree/PartSubList.hbm.xml - - - org/argeo/slc/hibernate/process/SlcExecution.hbm.xml - - - org/argeo/slc/hibernate/process/SlcExecutionStep.hbm.xml - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/ws/client/spring/applicationContext.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/ws/client/spring/applicationContext.xml new file mode 100644 index 000000000..e128c32c1 --- /dev/null +++ b/org.argeo.slc.core/src/main/resources/org/argeo/slc/ws/client/spring/applicationContext.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/org.argeo.slc.core/src/main/resources/org/argeo/slc/xml/spring/applicationContext.xml b/org.argeo.slc.core/src/main/resources/org/argeo/slc/xml/spring/applicationContext.xml new file mode 100644 index 000000000..13bd1dd03 --- /dev/null +++ b/org.argeo.slc.core/src/main/resources/org/argeo/slc/xml/spring/applicationContext.xml @@ -0,0 +1,14 @@ + + + + + + + + diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionCastorTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionCastorTest.java index 062fbb003..55fba622f 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionCastorTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionCastorTest.java @@ -22,6 +22,7 @@ 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.validation.XmlValidator; import org.springframework.xml.xsd.XsdSchema; public class SlcExecutionCastorTest extends AbstractSpringTestCase { @@ -32,8 +33,8 @@ public class SlcExecutionCastorTest extends AbstractSpringTestCase { @Override public void setUp() { - marshaller = getBean("marshaller"); - unmarshaller = getBean("marshaller"); + marshaller = getBean(Marshaller.class); + unmarshaller = getBean(Unmarshaller.class); } public void testMarshalling() throws Exception { @@ -97,9 +98,8 @@ public class SlcExecutionCastorTest extends AbstractSpringTestCase { marshaller.marshal(obj, xml); log.info("Marshalled object: " + xml); - XsdSchema schema = getBean("schema"); - UnitXmlUtils.assertXsdSchemaValidation(schema, new StringSource(xml - .toString())); + UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class), + new StringSource(xml.toString())); return xml.toString(); } diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionWsIntegrationTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionWsIntegrationTest.java index d117cc047..95bc048ee 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionWsIntegrationTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/process/SlcExecutionWsIntegrationTest.java @@ -10,9 +10,8 @@ public class SlcExecutionWsIntegrationTest extends AbstractSpringTestCase { private Log log = LogFactory.getLog(getClass()); public void testSendSlcExecutionrequest() { - WebServiceTemplate template = getBean("webServiceTemplate"); - SlcExecution slcExec = SlcExecutionTestUtils - .createSimpleSlcExecution(); + WebServiceTemplate template = getBean(WebServiceTemplate.class); + SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); SlcExecutionRequest req = new SlcExecutionRequest(); req.setSlcExecution(slcExec); 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 fbce288c1..ee09d0391 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,6 +4,7 @@ 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.validation.XmlValidator; import org.springframework.xml.xsd.XsdSchema; import org.apache.commons.logging.Log; @@ -18,18 +19,16 @@ 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"); - unmarshaller = getBean("marshaller"); + marshaller = getBean(Marshaller.class); + unmarshaller = getBean(Unmarshaller.class); } - - public void testMarshUnmarsh() throws Exception { TreeTestResult ttr = createCompleteTreeTestResult(); @@ -38,32 +37,31 @@ public class TreeTestResultCastorTest extends AbstractSpringTestCase { log.info("Marshalled TreeTestResult: " + xml); - XsdSchema schema = getBean("schema"); - UnitXmlUtils.assertXsdSchemaValidation(schema, new StringSource(xml - .toString())); + UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class), + new StringSource(xml.toString())); TreeTestResult ttrUnm = (TreeTestResult) unmarshaller .unmarshal(new StringSource(xml.toString())); UnitTestTreeUtil.assertTreeTestResult(ttr, ttrUnm); } - - public void testTreeTestResultRequest() throws Exception{ + + public void testTreeTestResultRequest() throws Exception { TreeTestResultRequest req = new TreeTestResultRequest(); req.setTreeTestResult(createCompleteTreeTestResult()); - + StringResult xml = new StringResult(); marshaller.marshal(req, xml); log.info("Marshalled TreeTestResult Request: " + xml); - XsdSchema schema = getBean("schema"); - UnitXmlUtils.assertXsdSchemaValidation(schema, new StringSource(xml - .toString())); + UnitXmlUtils.assertXmlValidation(getBean(XmlValidator.class), + new StringSource(xml.toString())); TreeTestResultRequest reqUnm = (TreeTestResultRequest) unmarshaller .unmarshal(new StringSource(xml.toString())); - UnitTestTreeUtil.assertTreeTestResult(req.getTreeTestResult(), reqUnm.getTreeTestResult()); + UnitTestTreeUtil.assertTreeTestResult(req.getTreeTestResult(), reqUnm + .getTreeTestResult()); } } diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultWsIntegrationTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultWsIntegrationTest.java index 3f1df773d..cf4859525 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultWsIntegrationTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/core/test/tree/TreeTestResultWsIntegrationTest.java @@ -14,7 +14,7 @@ public class TreeTestResultWsIntegrationTest extends AbstractSpringTestCase { private Log log = LogFactory.getLog(getClass()); public void testSendSlcExecutionrequest() { - WebServiceTemplate template = getBean("webServiceTemplate"); + WebServiceTemplate template = getBean(WebServiceTemplate.class); TreeTestResultRequest req = new TreeTestResultRequest(); req.setTreeTestResult(createCompleteTreeTestResult()); diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/process/SlcExecutionHibernateTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/process/SlcExecutionHibernateTest.java index dd3187227..f821dbd9b 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/process/SlcExecutionHibernateTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/process/SlcExecutionHibernateTest.java @@ -11,7 +11,7 @@ import org.argeo.slc.unit.AbstractSpringTestCase; public class SlcExecutionHibernateTest extends AbstractSpringTestCase { public void testSave() { - SlcExecutionDao dao = getBean("slcExecutionDao"); + SlcExecutionDao dao = getBean(SlcExecutionDao.class); SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); slcExec.getSteps().add(new SlcExecutionStep("LOG", "A log line")); @@ -29,38 +29,41 @@ public class SlcExecutionHibernateTest extends AbstractSpringTestCase { } public void testModify() { - SlcExecutionDao dao = getBean("slcExecutionDao"); + SlcExecutionDao dao = getBean(SlcExecutionDao.class); - // slcExecution Creation + // slcExecution Creation SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); slcExec.getSteps().add(new SlcExecutionStep("LOG", "A log line")); slcExec.getSteps().add(new SlcExecutionStep("LOG", "Two log\nlines")); dao.create(slcExec); - - // slcExecution retrieval and update + + // slcExecution retrieval and update SlcExecution slcExecRetrieved = dao.getSlcExecution(slcExec.getUuid()); - - List logLineListStep0 = slcExecRetrieved.getSteps().get(0).getLogLines(); - for (String logLine : logLineListStep0) + + List logLineListStep0 = slcExecRetrieved.getSteps().get(0) + .getLogLines(); + for (String logLine : logLineListStep0) logLine = logLine + "appended Log text"; - + slcExecRetrieved.getSteps().get(0).setLogLines(logLineListStep0); - slcExecRetrieved.getSteps().add(new SlcExecutionStep("LOG", "Three \n log \n lines")); - + slcExecRetrieved.getSteps().add( + new SlcExecutionStep("LOG", "Three \n log \n lines")); + dao.update(slcExecRetrieved); - - // updated slcExecution retrieval and comparison - SlcExecution slcExecUpdated = dao.getSlcExecution(slcExec.getUuid()); - - SlcExecutionTestUtils.assertSlcExecution(slcExecRetrieved, slcExecUpdated); + + // updated slcExecution retrieval and comparison + SlcExecution slcExecUpdated = dao.getSlcExecution(slcExec.getUuid()); + + SlcExecutionTestUtils.assertSlcExecution(slcExecRetrieved, + slcExecUpdated); assertEquals(3, slcExecUpdated.getSteps().size()); - SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps().get(0), - slcExecRetrieved.getSteps().get(0)); - SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps().get(1), - slcExecRetrieved.getSteps().get(1)); - SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps().get(2), - slcExecRetrieved.getSteps().get(2)); + SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps() + .get(0), slcExecRetrieved.getSteps().get(0)); + SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps() + .get(1), slcExecRetrieved.getSteps().get(1)); + SlcExecutionTestUtils.assertSlcExecutionStep(slcExecUpdated.getSteps() + .get(2), slcExecRetrieved.getSteps().get(2)); } @Override diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSPathDaoHibernateTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSPathDaoHibernateTest.java index 28ab1c7bc..3cb906b24 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSPathDaoHibernateTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSPathDaoHibernateTest.java @@ -7,8 +7,7 @@ import org.argeo.slc.unit.AbstractSpringTestCase; public class TreeSPathDaoHibernateTest extends AbstractSpringTestCase { public void testCreate() { - TreeSPathDao treeSPathDao = (TreeSPathDao) getContext().getBean( - "treeSPathDao"); + TreeSPathDao treeSPathDao = getBean(TreeSPathDao.class); String pathParentStr = "/root/testParent"; String pathStr = pathParentStr + "/test"; diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSRegistryDaoHibernateTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSRegistryDaoHibernateTest.java index 1fe66c75a..c9d0a99cd 100644 --- a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSRegistryDaoHibernateTest.java +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/structure/tree/TreeSRegistryDaoHibernateTest.java @@ -10,8 +10,7 @@ import org.argeo.slc.unit.AbstractSpringTestCase; public class TreeSRegistryDaoHibernateTest extends AbstractSpringTestCase { public void testCreate() { - TreeSRegistryDao treeSRegistryDao = (TreeSRegistryDao) getContext() - .getBean("treeSRegistryDao"); + TreeSRegistryDao treeSRegistryDao = getBean(TreeSRegistryDao.class); TreeSPathDao treeSPathDao = (TreeSPathDao) getContext().getBean( "treeSPathDao"); diff --git a/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/test/tree/CastorTestResultDaoHibernateTest.java b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/test/tree/CastorTestResultDaoHibernateTest.java new file mode 100644 index 000000000..dda823d33 --- /dev/null +++ b/org.argeo.slc.core/src/test/java/org/argeo/slc/hibernate/test/tree/CastorTestResultDaoHibernateTest.java @@ -0,0 +1,39 @@ +package org.argeo.slc.hibernate.test.tree; + +import org.springframework.oxm.Marshaller; +import org.springframework.oxm.Unmarshaller; +import org.springframework.xml.transform.StringResult; +import org.springframework.xml.transform.StringSource; + +import org.argeo.slc.core.test.tree.TreeTestResult; +import org.argeo.slc.core.test.tree.TreeTestResultTestUtils; +import org.argeo.slc.dao.test.tree.TreeTestResultDao; +import org.argeo.slc.unit.AbstractSpringTestCase; +import org.argeo.slc.unit.test.tree.UnitTestTreeUtil; + +public class CastorTestResultDaoHibernateTest extends AbstractSpringTestCase { + + public void testUnmarshallAndCreate() throws Exception { + TreeTestResult ttr = TreeTestResultTestUtils + .createCompleteTreeTestResult(); + + StringResult result = new StringResult(); + getBean(Marshaller.class).marshal(ttr, result); + + StringSource source = new StringSource(result.toString()); + TreeTestResult ttrUnm = (TreeTestResult) getBean(Unmarshaller.class) + .unmarshal(source); + + TreeTestResultDao ttrDao = getBean(TreeTestResultDao.class); + ttrDao.create(ttrUnm); + TreeTestResult ttrPersist = ttrDao.getTestResult(ttr.getUuid()); + + UnitTestTreeUtil.assertTreeTestResult(ttr, ttrPersist); + } + + @Override + protected String getApplicationContextLocation() { + return "org/argeo/slc/hibernate/withCastor.xml"; + } + +} diff --git a/org.argeo.slc.core/src/test/resources/org/argeo/slc/castor/applicationContext.xml b/org.argeo.slc.core/src/test/resources/org/argeo/slc/castor/applicationContext.xml index e6334a978..eb0b2c3d6 100644 --- a/org.argeo.slc.core/src/test/resources/org/argeo/slc/castor/applicationContext.xml +++ b/org.argeo.slc.core/src/test/resources/org/argeo/slc/castor/applicationContext.xml @@ -2,35 +2,9 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - - - - - classpath:org/argeo/slc/castor/process/mapping.xml - - - classpath:org/argeo/slc/castor/test/tree/mapping.xml - - - - + + - - - - - - - - - - - - diff --git a/org.argeo.slc.core/src/test/resources/org/argeo/slc/core/process/execution.xml b/org.argeo.slc.core/src/test/resources/org/argeo/slc/core/process/execution.xml index 605339877..bdb071b0c 100644 --- a/org.argeo.slc.core/src/test/resources/org/argeo/slc/core/process/execution.xml +++ b/org.argeo.slc.core/src/test/resources/org/argeo/slc/core/process/execution.xml @@ -3,7 +3,8 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - + @@ -17,12 +18,13 @@ - + - + \ No newline at end of file diff --git a/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/applicationContext.xml b/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/applicationContext.xml index 76c1622a9..8c6c433c1 100644 --- a/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/applicationContext.xml +++ b/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/applicationContext.xml @@ -3,29 +3,30 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - + + parent="slcDefault.sessionFactory.hibernateTestHSQL"> - + - + - - + + - + \ No newline at end of file diff --git a/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/withCastor.xml b/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/withCastor.xml new file mode 100644 index 000000000..ae7f97114 --- /dev/null +++ b/org.argeo.slc.core/src/test/resources/org/argeo/slc/hibernate/withCastor.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file