From: Mathieu Baudier Date: Sat, 28 Jun 2008 10:09:12 +0000 (+0000) Subject: Improve web services X-Git-Tag: argeo-slc-2.1.7~2739 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=37a53e4b259d7455b3406ecb8ddc868cfc86f920;p=gpl%2Fargeo-slc.git Improve web services git-svn-id: https://svn.argeo.org/slc/trunk@1303 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/ScenarioWsIntegrationTest.java b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/ScenarioWsIntegrationTest.java new file mode 100644 index 000000000..b14c70d38 --- /dev/null +++ b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/ScenarioWsIntegrationTest.java @@ -0,0 +1,85 @@ +package org.argeo.slc.ws; + +import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createMinimalConsistentTreeTestResult; +import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartError; +import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartFailed; +import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartPassed; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.argeo.slc.core.process.SlcExecution; +import org.argeo.slc.core.process.SlcExecutionStep; +import org.argeo.slc.core.test.SimpleResultPart; +import org.argeo.slc.core.test.tree.TreeTestResult; +import org.argeo.slc.msg.process.SlcExecutionRequest; +import org.argeo.slc.msg.process.SlcExecutionStatusRequest; +import org.argeo.slc.msg.process.SlcExecutionStepsRequest; +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.process.SlcExecutionTestUtils; +import org.springframework.ws.client.core.WebServiceTemplate; + +public class ScenarioWsIntegrationTest extends AbstractSpringTestCase { + private Log log = LogFactory.getLog(getClass()); + + private WebServiceTemplate template; + + public void setUp() { + template = getBean(WebServiceTemplate.class); + } + + public void testSinglePathScenario() { + // Create SLC execution + SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); + log.info("Send create SlcExecutionRequest for SlcExecution #" + + slcExec.getUuid()); + template.marshalSendAndReceive(new SlcExecutionRequest(slcExec)); + + // Add SLC execution step + SlcExecutionStep step = new SlcExecutionStep("JUnit step"); + slcExec.getSteps().add(step); + log.info("Send SlcExecutionStepsRequest for SlcExecution #" + + slcExec.getUuid()); + template.marshalSendAndReceive(new SlcExecutionStepsRequest(slcExec + .getUuid(), step)); + + // Create test result + TreeTestResult ttr = createMinimalConsistentTreeTestResult(slcExec); + ttr.addResultPart(createSimpleResultPartPassed()); + log.info("Send CreateTreeTestResultRequest for result #" + + ttr.getUuid()); + template.marshalSendAndReceive(new CreateTreeTestResultRequest(ttr)); + + // Add failed part + SimpleResultPart failedPart = createSimpleResultPartFailed(); + ttr.addResultPart(failedPart); + log.info("Send ResultPartRequest for result #" + ttr.getUuid()); + template.marshalSendAndReceive(new ResultPartRequest(ttr, null, + failedPart)); + + // Add error part + SimpleResultPart errorPart = createSimpleResultPartError(); + ttr.addResultPart(errorPart); + log.info("Send ResultPartRequest for result #" + ttr.getUuid()); + template.marshalSendAndReceive(new ResultPartRequest(ttr, null, + errorPart)); + + // Close result + ttr.close(); + log + .info("Send CloseTreeTestResultRequest for result #" + + ttr.getUuid()); + template.marshalSendAndReceive(new CloseTreeTestResultRequest(ttr + .getUuid(), ttr.getCloseDate())); + + // Notify SLC execution FINISHED + slcExec.setStatus(SlcExecution.STATUS_FINISHED); + log.info("Send SlcExecutionStatusRequest for SlcExecution #" + + slcExec.getUuid()); + template.marshalSendAndReceive(new SlcExecutionStatusRequest(slcExec + .getUuid(), slcExec.getStatus())); + } + +} diff --git a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcAntWsIntegrationTest.java b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcAntWsIntegrationTest.java index ed3634db4..7c37e535f 100644 --- a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcAntWsIntegrationTest.java +++ b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcAntWsIntegrationTest.java @@ -1,9 +1,6 @@ package org.argeo.slc.ws; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.argeo.slc.ant.unit.MinimalAntClasspathTestCase; -import org.argeo.slc.unit.AbstractSpringTestCase; public class SlcAntWsIntegrationTest extends MinimalAntClasspathTestCase { public void testSimpleRun() { diff --git a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcExecutionWsIntegrationTest.java b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcExecutionWsIntegrationTest.java index d097900d8..27f1e72f3 100644 --- a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcExecutionWsIntegrationTest.java +++ b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/SlcExecutionWsIntegrationTest.java @@ -21,19 +21,14 @@ import org.argeo.slc.ws.client.WebServiceUtils; public class SlcExecutionWsIntegrationTest extends AbstractSpringTestCase { private Log log = LogFactory.getLog(getClass()); - WebServiceTemplate template; + private WebServiceTemplate template; public void setUp() { template = getBean(WebServiceTemplate.class); - ; } public void testSlcExecutionRequests() { - SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); - - log.info("Send create SlcExecutionRequest for SlcExecution #" - + slcExec.getUuid()); - template.marshalSendAndReceive(new SlcExecutionRequest(slcExec)); + SlcExecution slcExec = createAndSendSlcExecution(); slcExec.setUser("otherUser"); log.info("Send update SlcExecutionRequest for SlcExecution #" @@ -42,25 +37,17 @@ public class SlcExecutionWsIntegrationTest extends AbstractSpringTestCase { } public void testSlcExecutionStatusRequest() { - SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); - - log.info("Send create SlcExecutionRequest for SlcExecution #" - + slcExec.getUuid()); - template.marshalSendAndReceive(new SlcExecutionRequest(slcExec)); + SlcExecution slcExec = createAndSendSlcExecution(); slcExec.setStatus(SlcExecution.STATUS_FINISHED); - log.info("Send update SlcExecutionStatusRequest for SlcExecution #" + log.info("Send SlcExecutionStatusRequest for SlcExecution #" + slcExec.getUuid()); template.marshalSendAndReceive(new SlcExecutionStatusRequest(slcExec .getUuid(), slcExec.getStatus())); } public void testSendSlcExecutionStepRequest() { - SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); - - log.info("Send create SlcExecutionRequest for SlcExecution #" - + slcExec.getUuid()); - template.marshalSendAndReceive(new SlcExecutionRequest(slcExec)); + SlcExecution slcExec = createAndSendSlcExecution(); SlcExecutionStep step1 = new SlcExecutionStep( "Logline\nAnother log line."); @@ -70,7 +57,6 @@ public class SlcExecutionWsIntegrationTest extends AbstractSpringTestCase { steps.add(step1); steps.add(step2); - slcExec.setStatus(SlcExecution.STATUS_FINISHED); log.info("Send SlcExecutionStepsRequest for SlcExecution #" + slcExec.getUuid()); try { @@ -81,4 +67,13 @@ public class SlcExecutionWsIntegrationTest extends AbstractSpringTestCase { throw e; } } + + protected SlcExecution createAndSendSlcExecution() { + SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution(); + + log.info("Send create SlcExecutionRequest for SlcExecution #" + + slcExec.getUuid()); + template.marshalSendAndReceive(new SlcExecutionRequest(slcExec)); + return slcExec; + } } diff --git a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/TreeTestResultWsIntegrationTest.java b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/TreeTestResultWsIntegrationTest.java index d27c795dd..b3c2a7cb9 100644 --- a/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/TreeTestResultWsIntegrationTest.java +++ b/org.argeo.slc.webapp/src/test/java/org/argeo/slc/ws/TreeTestResultWsIntegrationTest.java @@ -17,27 +17,18 @@ import org.argeo.slc.unit.AbstractSpringTestCase; public class TreeTestResultWsIntegrationTest extends AbstractSpringTestCase { private Log log = LogFactory.getLog(getClass()); - public void testCreateTreeTestResultRequest() { - WebServiceTemplate template = getBean(WebServiceTemplate.class); - CreateTreeTestResultRequest req = new CreateTreeTestResultRequest( - createCompleteTreeTestResult()); - req.getTreeTestResult().close();// in order to avoid unclosed in test db + private WebServiceTemplate template; - log.info("Send CreateTreeTestResultRequest for result " - + req.getTreeTestResult().getUuid()); + public void setUp() { + template = getBean(WebServiceTemplate.class); + } - template.marshalSendAndReceive(req); + public void testCreateTreeTestResultRequest() { + createAndSendTreeTestResult(true); } public void testResultPartRequest() { - WebServiceTemplate template = getBean(WebServiceTemplate.class); - TreeTestResult ttr = createCompleteTreeTestResult(); - ttr.close();// in order to avoid unclosed in test db - CreateTreeTestResultRequest reqCreate = new CreateTreeTestResultRequest( - ttr); - log.info("Send CreateTreeTestResultRequest for result " - + reqCreate.getTreeTestResult().getUuid()); - template.marshalSendAndReceive(reqCreate); + TreeTestResult ttr = createAndSendTreeTestResult(true); ResultPartRequest req = createSimpleResultPartRequest(ttr); @@ -46,22 +37,24 @@ public class TreeTestResultWsIntegrationTest extends AbstractSpringTestCase { } public void testCloseTreeTestResultRequest() { - WebServiceTemplate template = getBean(WebServiceTemplate.class); - - TreeTestResult ttr = createCompleteTreeTestResult(); - CreateTreeTestResultRequest reqCreate = new CreateTreeTestResultRequest( - ttr); - log.info("Send CreateTreeTestResultRequest for result " - + reqCreate.getTreeTestResult().getUuid()); - template.marshalSendAndReceive(reqCreate); + TreeTestResult ttr = createAndSendTreeTestResult(false); ttr.close(); CloseTreeTestResultRequest req = new CloseTreeTestResultRequest(ttr .getUuid(), ttr.getCloseDate()); - log.info("Send CloseTreeTestResultRequest for result " + req.getResultUuid()); - template.marshalSendAndReceive(req); } + + protected TreeTestResult createAndSendTreeTestResult(boolean close) { + TreeTestResult ttr = createCompleteTreeTestResult(); + log.info("Send CreateTreeTestResultRequest for result #" + + ttr.getUuid()); + template.marshalSendAndReceive(new CreateTreeTestResultRequest(ttr)); + + if (close) + ttr.close(); + return ttr; + } }