2 * Copyright © 2019 iconectiv
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
17 package org.openecomp.sdcrests.externaltesting.rest;
19 import io.swagger.annotations.Api;
20 import org.openecomp.core.externaltesting.api.ClientConfiguration;
21 import org.openecomp.core.externaltesting.api.RemoteTestingEndpointDefinition;
22 import org.openecomp.core.externaltesting.api.VtpTestExecutionRequest;
23 import org.springframework.validation.annotation.Validated;
26 import javax.ws.rs.core.MediaType;
27 import javax.ws.rs.core.Response;
28 import java.util.List;
31 @Path("/v1.0/externaltesting")
32 @Produces(MediaType.APPLICATION_JSON)
33 @Consumes(MediaType.APPLICATION_JSON)
34 @Api(value = "External-Testing")
37 public interface ExternalTesting {
45 Response setConfig(ClientConfiguration config);
48 @Path("/testcasetree")
49 Response getTestCasesAsTree();
53 Response getEndpoints();
57 Response setEndpoints(List<RemoteTestingEndpointDefinition> endpoints);
60 @Path("/endpoints/{endpointId}/scenarios")
61 Response getScenarios(@PathParam("endpointId") String endpointId);
64 @Path("/endpoints/{endpointId}/scenarios/{scenario}/testsuites")
65 Response getTestsuites(@PathParam("endpointId") String endpointId, @PathParam("scenario") String scenario);
68 @Path("/endpoints/{endpointId}/scenarios/{scenario}/testcases")
69 Response getTestcases(@PathParam("endpointId") String endpointId,
70 @PathParam("scenario") String scenario);
73 @Path("/endpoints/{endpointId}/scenarios/{scenario}/testsuites/{testsuite}/testcases/{testcase}")
74 Response getTestcase(@PathParam("endpointId") String endpointId,
75 @PathParam("scenario") String scenario,
76 @PathParam("testsuite") String testsuite,
77 @PathParam("testcase") String testcase);
80 @Path("/endpoints/{endpointId}/executions/{executionId}")
81 Response getExecution(@PathParam("endpointId") String endpointId,
82 @PathParam("executionId") String executionId);
87 Response execute(List<VtpTestExecutionRequest> req,
88 @QueryParam("requestId") String requestId);