]> git.argeo.org Git - gpl/argeo-slc.git/blob - legacy/integration-tests/org.argeo.slc.it.webapp/src/test/java-old/org/argeo/slc/ws/ScenarioWsIntegrationTest.java
460edd0a3cce5c9a91c5e3f1e0792ecfa258f495
[gpl/argeo-slc.git] / legacy / integration-tests / org.argeo.slc.it.webapp / src / test / java-old / org / argeo / slc / ws / ScenarioWsIntegrationTest.java
1 /*
2 * Copyright (C) 2010 Mathieu Baudier <mbaudier@argeo.org>
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17 package org.argeo.slc.ws;
18
19 import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createMinimalConsistentTreeTestResult;
20 import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartError;
21 import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartFailed;
22 import static org.argeo.slc.unit.test.tree.TreeTestResultTestUtils.createSimpleResultPartPassed;
23
24 import org.apache.commons.logging.Log;
25 import org.apache.commons.logging.LogFactory;
26 import org.argeo.slc.core.test.SimpleResultPart;
27 import org.argeo.slc.core.test.tree.TreeTestResult;
28 import org.argeo.slc.msg.process.SlcExecutionRequest;
29 import org.argeo.slc.msg.process.SlcExecutionStatusRequest;
30 import org.argeo.slc.msg.process.SlcExecutionStepsRequest;
31 import org.argeo.slc.msg.test.tree.CloseTreeTestResultRequest;
32 import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest;
33 import org.argeo.slc.msg.test.tree.ResultPartRequest;
34 import org.argeo.slc.process.SlcExecution;
35 import org.argeo.slc.process.SlcExecutionStep;
36 import org.argeo.slc.unit.AbstractSpringTestCase;
37 import org.argeo.slc.unit.process.SlcExecutionTestUtils;
38 import org.springframework.ws.client.core.WebServiceTemplate;
39
40 public class ScenarioWsIntegrationTest extends AbstractSpringTestCase {
41 private Log log = LogFactory.getLog(getClass());
42
43 private WebServiceTemplate template;
44
45 public void setUp() {
46 template = getBean(WebServiceTemplate.class);
47 }
48
49 public void testSinglePathScenario() {
50 // Create SLC execution
51 SlcExecution slcExec = SlcExecutionTestUtils.createSimpleSlcExecution();
52 log.info("Send create SlcExecutionRequest for SlcExecution #"
53 + slcExec.getUuid());
54 template.marshalSendAndReceive(new SlcExecutionRequest(slcExec));
55
56 // Add SLC execution step
57 SlcExecutionStep step = new SlcExecutionStep("JUnit step");
58 slcExec.getSteps().add(step);
59 log.info("Send SlcExecutionStepsRequest for SlcExecution #"
60 + slcExec.getUuid());
61 template.marshalSendAndReceive(new SlcExecutionStepsRequest(slcExec
62 .getUuid(), step));
63
64 // Create test result
65 TreeTestResult ttr = createMinimalConsistentTreeTestResult(slcExec);
66 ttr.addResultPart(createSimpleResultPartPassed());
67 log.info("Send CreateTreeTestResultRequest for result #"
68 + ttr.getUuid());
69 template.marshalSendAndReceive(new CreateTreeTestResultRequest(ttr));
70
71 // Add failed part
72 SimpleResultPart failedPart = createSimpleResultPartFailed();
73 ttr.addResultPart(failedPart);
74 log.info("Send ResultPartRequest for result #" + ttr.getUuid());
75 template.marshalSendAndReceive(new ResultPartRequest(ttr, null,
76 failedPart));
77
78 // Add error part
79 SimpleResultPart errorPart = createSimpleResultPartError();
80 ttr.addResultPart(errorPart);
81 log.info("Send ResultPartRequest for result #" + ttr.getUuid());
82 template.marshalSendAndReceive(new ResultPartRequest(ttr, null,
83 errorPart));
84
85 // Close result
86 ttr.close();
87 log
88 .info("Send CloseTreeTestResultRequest for result #"
89 + ttr.getUuid());
90 template.marshalSendAndReceive(new CloseTreeTestResultRequest(ttr
91 .getUuid(), ttr.getCloseDate()));
92
93 // Notify SLC execution FINISHED
94 slcExec.setStatus(SlcExecution.STATUS_FINISHED);
95 log.info("Send SlcExecutionStatusRequest for SlcExecution #"
96 + slcExec.getUuid());
97 template.marshalSendAndReceive(new SlcExecutionStatusRequest(slcExec
98 .getUuid(), slcExec.getStatus()));
99 }
100
101 }