From ddb67dc3cbb04f4857f2cf24221b306fa2bab052 Mon Sep 17 00:00:00 2001 From: James Guistwite Date: Wed, 1 May 2019 09:24:06 -0400 Subject: Improved test coverage. Reorganized some of the tests due to comments Issue-ID: SDC-2238 Change-Id: I6b3bcc674c792f3c5c06e851a2cfe2d92eead07c Signed-off-by: James Guistwite --- .../externaltesting/rest/services/ApiTest.java | 260 +++++++++++++++++++++ .../externaltesting/rest/services/ApiTests.java | 207 ---------------- 2 files changed, 260 insertions(+), 207 deletions(-) create mode 100644 openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTest.java delete mode 100644 openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTests.java (limited to 'openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest') 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 requests = + Arrays.asList(new VtpTestExecutionRequest(), new VtpTestExecutionRequest()); + Assert.assertNotNull(testing.execute(requests, "requestId")); + + + ClientConfiguration cc = new ClientConfiguration(); + Assert.assertNotNull(testing.setConfig(cc)); + + ArrayList 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 setEndpoints(List endpoints) { + throw new ExternalTestingException(EXPECTED, 500, EXPECTED); + } + + @Override + public TestTreeNode getTestCasesAsTree() { + throw new ExternalTestingException(EXPECTED, 500, EXPECTED); + } + + @Override + public List getEndpoints() { + throw new ExternalTestingException(EXPECTED, 500, EXPECTED); + } + + @Override + public List getScenarios(String endpoint) { + throw new ExternalTestingException(EXPECTED, 500, EXPECTED); + } + + @Override + public List getTestSuites(String endpoint, String scenario) { + throw new ExternalTestingException(EXPECTED, 500, EXPECTED); + } + + @Override + public List 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 execute(List 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 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()); + } +} diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTests.java b/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTests.java deleted file mode 100644 index 411be2f150..0000000000 --- a/openecomp-be/api/openecomp-sdc-rest-webapp/externaltesting-rest/externaltesting-rest-services/src/test/java/org/openecomp/sdcrests/externaltesting/rest/services/ApiTests.java +++ /dev/null @@ -1,207 +0,0 @@ -/* - * 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 java.util.Arrays; -import java.util.List; - -public class ApiTests { - - 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 requests = - Arrays.asList(new VtpTestExecutionRequest(), new VtpTestExecutionRequest()); - Assert.assertNotNull(testing.execute(requests, "requestId")); - } - - 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 setEndpoints(List endpoints) { - throw new ExternalTestingException(EXPECTED, 500, EXPECTED); - } - - @Override - public TestTreeNode getTestCasesAsTree() { - throw new ExternalTestingException(EXPECTED, 500, EXPECTED); - } - - @Override - public List getEndpoints() { - throw new ExternalTestingException(EXPECTED, 500, EXPECTED); - } - - @Override - public List getScenarios(String endpoint) { - throw new ExternalTestingException(EXPECTED, 500, EXPECTED); - } - - @Override - public List getTestSuites(String endpoint, String scenario) { - throw new ExternalTestingException(EXPECTED, 500, EXPECTED); - } - - @Override - public List 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 execute(List 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 the cases when the - * testing manager throws an exception. - */ - @Test - public void testExceptions() { - MockitoAnnotations.initMocks(this); - - ExternalTestingManager m = new ApiTestExternalTestingManager(); - ExternalTestingImpl testingF = new ExternalTestingImpl(m); - - try { - testingF.getConfig(); - } - catch (Exception ex) { - // expected. - } - - - try { - testingF.getEndpoints(); - } - catch (ExternalTestingException e) { - // expected. - } - - try { - testingF.getExecution(EP, EXEC); - } - catch (ExternalTestingException e) { - // expected. - } - try { - testingF.getScenarios(EP); - } - catch (ExternalTestingException e) { - // expected. - } - - try { - testingF.getTestcase(EP, SC, TS, TC); - } - catch (ExternalTestingException e) { - // expected. - } - - try { - testingF.getTestcases(EP, SC); - } - catch (ExternalTestingException e) { - // expected. - } - - try { - testingF.getTestsuites(EP, SC); - } - catch (ExternalTestingException e) { - // expected. - } - - try { - testingF.getTestCasesAsTree(); - } - catch (ExternalTestingException e) { - // expected. - } - - List requestsF = - Arrays.asList(new VtpTestExecutionRequest(), new VtpTestExecutionRequest()); - - try { - testingF.execute(requestsF, null); - } - catch (ExternalTestingException e) { - // expected. - } - - - try { - testingF.execute(requestsF, null); - } - catch (ExternalTestingException e) { - // expected. - } - } -} -- cgit 1.2.3-korg