summaryrefslogtreecommitdiffstats
path: root/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java')
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java260
1 files changed, 260 insertions, 0 deletions
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java b/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java
new file mode 100644
index 0000000000..5f302bebc6
--- /dev/null
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java
@@ -0,0 +1,260 @@
+/*
+ * Copyright © 2019 iconectiv
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.sdcrests.externaltesting.rest.services;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.core.externaltesting.api.*;
+import org.openecomp.core.externaltesting.errors.ExternalTestingException;
+
+import javax.ws.rs.core.Response;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+public class ApiTest {
+
+ private static final String EP = "ep";
+ private static final String EXEC = "exec";
+ private static final String SC = "sc";
+ private static final String TS = "ts";
+ private static final String TC = "tc";
+ private static final String EXPECTED = "Expected";
+
+
+ @Mock
+ private ExternalTestingManager testingManager;
+
+ /**
+ * At the API level, test that the code does not throw
+ * exceptions but there's not much to test.
+ */
+ @Test
+ public void testApi() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingImpl testing = new ExternalTestingImpl(testingManager);
+ Assert.assertNotNull(testing.getConfig());
+ Assert.assertNotNull(testing.getEndpoints());
+ Assert.assertNotNull(testing.getExecution(EP, EXEC));
+ Assert.assertNotNull(testing.getScenarios(EP));
+ Assert.assertNotNull(testing.getTestcase(EP, SC, TS, TC));
+ Assert.assertNotNull(testing.getTestcases(EP, SC));
+ Assert.assertNotNull(testing.getTestsuites(EP, SC));
+ Assert.assertNotNull(testing.getTestCasesAsTree());
+
+ List<VtpTestExecutionRequest> requests =
+ Arrays.asList(new VtpTestExecutionRequest(), new VtpTestExecutionRequest());
+ Assert.assertNotNull(testing.execute(requests, "requestId"));
+
+
+ ClientConfiguration cc = new ClientConfiguration();
+ Assert.assertNotNull(testing.setConfig(cc));
+
+ ArrayList<RemoteTestingEndpointDefinition> lst = new ArrayList<>();
+ Assert.assertNotNull(testing.setEndpoints(lst));
+ }
+
+ class ApiTestExternalTestingManager implements ExternalTestingManager {
+ @Override
+ public ClientConfiguration getConfig() {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public ClientConfiguration setConfig(ClientConfiguration config) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public List<RemoteTestingEndpointDefinition> setEndpoints(List<RemoteTestingEndpointDefinition> endpoints) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public TestTreeNode getTestCasesAsTree() {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public List<RemoteTestingEndpointDefinition> getEndpoints() {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public List<VtpNameDescriptionPair> getScenarios(String endpoint) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public List<VtpNameDescriptionPair> getTestSuites(String endpoint, String scenario) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public List<VtpTestCase> getTestCases(String endpoint, String scenario) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public VtpTestCase getTestCase(String endpoint, String scenario, String testSuite, String testCaseName) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public List<VtpTestExecutionResponse> execute(List<VtpTestExecutionRequest> requests, String requestId) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+
+ @Override
+ public VtpTestExecutionResponse getExecution(String endpoint, String executionId) {
+ throw new ExternalTestingException(EXPECTED, 500, EXPECTED);
+ }
+ }
+
+ /**
+ * Test the exception handler logic for configuration get/set.
+ */
+ @Test()
+ public void testConfigExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response getResponse = testingF.getConfig();
+ Assert.assertEquals(500, getResponse.getStatus());
+
+ Response setResponse = testingF.setConfig(new ClientConfiguration());
+ Assert.assertEquals(500, setResponse.getStatus());
+ }
+
+ /**
+ * Test the exception handler logic for endpoint get/set.
+ */
+ @Test()
+ public void testEndpointExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response getResponse = testingF.getEndpoints();
+ Assert.assertEquals(500, getResponse.getStatus());
+
+ Response setResponse = testingF.setEndpoints(new ArrayList<>());
+ Assert.assertEquals(500, setResponse.getStatus());
+ }
+
+ /**
+ * Test the exception handler logic for executions (invocation and query).
+ */
+ @Test()
+ public void testExecutionExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ List<VtpTestExecutionRequest> requests =
+ Arrays.asList(new VtpTestExecutionRequest(), new VtpTestExecutionRequest());
+
+ Response invokeResponse = testingF.execute(requests, null);
+ Assert.assertEquals(500, invokeResponse.getStatus());
+
+ Response getResponse = testingF.getExecution(EP, EXEC);
+ Assert.assertEquals(500, getResponse.getStatus());
+ }
+
+
+ /**
+ * Test the exception handler logic for the cases when the
+ * testing manager throws an accessing the scenarios.
+ */
+ @Test()
+ public void testScenarioExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response response = testingF.getScenarios(EP);
+ Assert.assertEquals(500, response.getStatus());
+ }
+
+ /**
+ * Test the exception handler logic for the cases when the
+ * testing manager throws an accessing a test case.
+ */
+ @Test()
+ public void testTestCaseExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response response = testingF.getTestcase(EP, SC, TS, TC);
+ Assert.assertEquals(500, response.getStatus());
+ }
+
+ /**
+ * Test the exception handler logic for the cases when the
+ * testing manager throws an accessing the test cases.
+ */
+ @Test()
+ public void testTestCasesExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response response = testingF.getTestcases(EP, SC);
+ Assert.assertEquals(500, response.getStatus());
+ }
+
+ /**
+ * Test the exception handler logic for the cases when the
+ * testing manager throws an accessing the test suites.
+ */
+ @Test()
+ public void testTestSuitesExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response response = testingF.getTestsuites(EP, SC);
+ Assert.assertEquals(500, response.getStatus());
+ }
+
+ /**
+ * Test the exception handler logic for the cases when the
+ * testing manager throws an accessing the test tree.
+ */
+ @Test()
+ public void testTreeExceptions() {
+ MockitoAnnotations.initMocks(this);
+
+ ExternalTestingManager m = new ApiTestExternalTestingManager();
+ ExternalTestingImpl testingF = new ExternalTestingImpl(m);
+
+ Response response = testingF.getTestCasesAsTree();
+ Assert.assertEquals(500, response.getStatus());
+ }
+}