diff options
author | James Guistwite <jguistwite@iconectiv.com> | 2019-05-01 09:24:06 -0400 |
---|---|---|
committer | Oren Kleks <orenkle@amdocs.com> | 2019-05-29 07:13:15 +0000 |
commit | ddb67dc3cbb04f4857f2cf24221b306fa2bab052 (patch) | |
tree | 6f65605d2f2374f90491480b0fb4464632a8a5f3 | |
parent | 12a14459a87d1f5dc766457d125d04e320c8f9a9 (diff) |
Improved test coverage.
Reorganized some of the tests due to comments
Issue-ID: SDC-2238
Change-Id: I6b3bcc674c792f3c5c06e851a2cfe2d92eead07c
Signed-off-by: James Guistwite <jguistwite@iconectiv.com>
9 files changed, 199 insertions, 98 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/ApiTests.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 index 411be2f150..5f302bebc6 100644 --- 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/ApiTest.java @@ -23,10 +23,12 @@ 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 ApiTests { +public class ApiTest { private static final String EP = "ep"; private static final String EXEC = "exec"; @@ -60,6 +62,13 @@ public class ApiTests { 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 { @@ -120,88 +129,132 @@ public class ApiTests { } /** - * Test the exception handler logic for the cases when the - * testing manager throws an exception. + * Test the exception handler logic for configuration get/set. */ - @Test - public void testExceptions() { + @Test() + public void testConfigExceptions() { MockitoAnnotations.initMocks(this); ExternalTestingManager m = new ApiTestExternalTestingManager(); ExternalTestingImpl testingF = new ExternalTestingImpl(m); - try { - testingF.getConfig(); - } - catch (Exception ex) { - // expected. - } + Response getResponse = testingF.getConfig(); + Assert.assertEquals(500, getResponse.getStatus()); + Response setResponse = testingF.setConfig(new ClientConfiguration()); + Assert.assertEquals(500, setResponse.getStatus()); + } - try { - testingF.getEndpoints(); - } - catch (ExternalTestingException e) { - // expected. - } + /** + * Test the exception handler logic for endpoint get/set. + */ + @Test() + public void testEndpointExceptions() { + MockitoAnnotations.initMocks(this); - try { - testingF.getExecution(EP, EXEC); - } - catch (ExternalTestingException e) { - // expected. - } - try { - testingF.getScenarios(EP); - } - catch (ExternalTestingException e) { - // expected. - } + ExternalTestingManager m = new ApiTestExternalTestingManager(); + ExternalTestingImpl testingF = new ExternalTestingImpl(m); - try { - testingF.getTestcase(EP, SC, TS, TC); - } - catch (ExternalTestingException e) { - // expected. - } + Response getResponse = testingF.getEndpoints(); + Assert.assertEquals(500, getResponse.getStatus()); - try { - testingF.getTestcases(EP, SC); - } - catch (ExternalTestingException e) { - // expected. - } + Response setResponse = testingF.setEndpoints(new ArrayList<>()); + Assert.assertEquals(500, setResponse.getStatus()); + } - try { - testingF.getTestsuites(EP, SC); - } - catch (ExternalTestingException e) { - // expected. - } + /** + * Test the exception handler logic for executions (invocation and query). + */ + @Test() + public void testExecutionExceptions() { + MockitoAnnotations.initMocks(this); - try { - testingF.getTestCasesAsTree(); - } - catch (ExternalTestingException e) { - // expected. - } + ExternalTestingManager m = new ApiTestExternalTestingManager(); + ExternalTestingImpl testingF = new ExternalTestingImpl(m); - List<VtpTestExecutionRequest> requestsF = + List<VtpTestExecutionRequest> requests = Arrays.asList(new VtpTestExecutionRequest(), new VtpTestExecutionRequest()); - try { - testingF.execute(requestsF, null); - } - catch (ExternalTestingException e) { - // expected. - } + Response invokeResponse = testingF.execute(requests, null); + Assert.assertEquals(500, invokeResponse.getStatus()); + Response getResponse = testingF.getExecution(EP, EXEC); + Assert.assertEquals(500, getResponse.getStatus()); + } - try { - testingF.execute(requestsF, null); - } - catch (ExternalTestingException e) { - // expected. - } + + /** + * 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/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/failedexecution.json b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/failedexecution.json new file mode 100644 index 0000000000..089c3c16f0 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/failedexecution.json @@ -0,0 +1,6 @@ +{ + "code": "F-1131", + "message": "Failure reason", + "httpStatus": 500, + "status": "FAILED" +} diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ConfigurationTests.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ConfigurationTest.java index 05fc9e3938..f637632835 100644 --- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ConfigurationTests.java +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ConfigurationTest.java @@ -14,20 +14,18 @@ * limitations under the License. */ -package org.openecomp.core.externaltesting.impl; +package org.openecomp.core.externaltesting.api; import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.Assert; import org.junit.Test; import org.onap.sdc.tosca.services.YamlUtil; -import org.openecomp.core.externaltesting.api.ClientConfiguration; -import org.openecomp.core.externaltesting.api.RemoteTestingEndpointDefinition; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; -public class ConfigurationTests { +public class ConfigurationTest { @Test public void testClientConfig() { @@ -41,16 +39,6 @@ public class ConfigurationTests { } @Test - public void testConfig() throws Exception { - try (InputStream fileInput = new FileInputStream(new File("src/test/data/externaltesting-configuration.yaml"))) { - YamlUtil yamlUtil = new YamlUtil(); - Object raw = yamlUtil.yamlToMap(fileInput); - TestingAccessConfig accessConfig = new ObjectMapper().convertValue(raw, TestingAccessConfig.class); - Assert.assertNotNull("client config available", accessConfig.getClient()); - } - } - - @Test public void testEndpointDefinition() { RemoteTestingEndpointDefinition def = new RemoteTestingEndpointDefinition(); def.setId("vtp"); @@ -59,19 +47,17 @@ public class ConfigurationTests { def.setApiKey("FOOBARBAZ"); def.setUrl("http://example.com/vtptesting"); def.setScenarioFilter("c.*"); - - RemoteTestingEndpointDefinition def2 = new RemoteTestingEndpointDefinition(); - def2.setId("vtp"); - def2.setEnabled(true); - def2.setTitle("VTP"); - def2.setUrl("http://example.com/vtptesting"); - def2.setApiKey("FOOBARBAZ"); - def2.setScenarioFilter("c.*"); + def.setConfig("vtp,VTP,true,http://example.com/vtptesting,c.*,FOO"); Assert.assertEquals("code", "VTP", def.getTitle()); - Assert.assertEquals("API keys equals", def.getApiKey(), def2.getApiKey()); - Assert.assertEquals("code equals", def.getTitle(), def2.getTitle()); - Assert.assertEquals("url equals", def.getUrl(), def2.getUrl()); + Assert.assertEquals("API keys equals", "FOOBARBAZ", def.getApiKey()); + Assert.assertEquals("code equals", "VTP", def.getTitle()); + Assert.assertEquals("url equals", "http://example.com/vtptesting", def.getUrl()); + Assert.assertEquals("filter equals", "c.*", def.getScenarioFilter()); + Assert.assertTrue("enabled", def.isEnabled()); + Assert.assertEquals("id equals", "vtp", def.getId()); + Assert.assertNotNull("config has val", def.getConfig()); + boolean matches = def.getScenarioFilterPattern().matcher("certification").matches(); Assert.assertTrue("pattern", matches); diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ErrorBodyTests.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ErrorBodyTest.java index 216ff3599f..788e5d6cf3 100644 --- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ErrorBodyTests.java +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ErrorBodyTest.java @@ -19,7 +19,7 @@ package org.openecomp.core.externaltesting.api; import org.junit.Assert; import org.junit.Test; -public class ErrorBodyTests { +public class ErrorBodyTest { @Test public void testErrorBody() { diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTests.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java index bfa07ecc0c..541f636841 100644 --- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTests.java +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java @@ -25,7 +25,7 @@ import java.io.IOException; import java.util.Map; import java.util.UUID; -public class ExecutionRequestTests { +public class ExecutionRequestTest { @Test public void testTestCase() throws Exception { @@ -89,6 +89,19 @@ public class ExecutionRequestTests { Assert.assertEquals("COMPLETED", rsp.getStatus()); Assert.assertNotNull(rsp.getStartTime()); Assert.assertNotNull(rsp.getEndTime()); + + rsp = mapper.readValue(new File("src/test/data/failedexecution.json"), VtpTestExecutionResponse.class); + Assert.assertEquals("F-1131", rsp.getCode()); + Assert.assertEquals("Failure reason", rsp.getMessage()); + Assert.assertEquals(500, rsp.getHttpStatus().intValue()); + } + + @Test + public void testTreeConstructor() { + // test constructor. + TestTreeNode tree = new TestTreeNode("root", "Root"); + Assert.assertEquals("root", tree.getName()); + Assert.assertEquals("Root", tree.getDescription()); } @Test diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExternalTestingApiTests.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExternalTestingApiTests.java index 62b129c7c0..67cf71702d 100644 --- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExternalTestingApiTests.java +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExternalTestingApiTests.java @@ -21,8 +21,9 @@ import org.junit.runners.Suite; @RunWith(Suite.class) @Suite.SuiteClasses({ - ExecutionRequestTests.class, - ErrorBodyTests.class + ConfigurationTest.class, + ExecutionRequestTest.class, + ErrorBodyTest.class }) public class ExternalTestingApiTests { // nothing to do - just a placeholder. diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTests.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java index 2233f85ccf..04ddf6e2d4 100644 --- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTests.java +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java @@ -48,7 +48,7 @@ import java.nio.charset.Charset; import java.util.*; @RunWith(MockitoJUnitRunner.class) -public class ExternalTestingManagerImplTests { +public class ExternalTestingManagerImplTest { @Mock private RestTemplate restTemplate; diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingTestSuite.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingTestSuite.java index d9e4612774..6d464522b7 100644 --- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingTestSuite.java +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingTestSuite.java @@ -21,8 +21,8 @@ import org.junit.runners.Suite; @RunWith(Suite.class) @Suite.SuiteClasses({ - ExternalTestingManagerImplTests.class, - ConfigurationTests.class + ExternalTestingManagerImplTest.class, + TestingAccessConfigTest.class }) public class ExternalTestingTestSuite { // nothing to do - just a placeholder. diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/TestingAccessConfigTest.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/TestingAccessConfigTest.java new file mode 100644 index 0000000000..698133b08e --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/TestingAccessConfigTest.java @@ -0,0 +1,42 @@ +/* + * 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.core.externaltesting.impl; + +import com.fasterxml.jackson.databind.ObjectMapper; +import org.junit.Assert; +import org.junit.Test; +import org.onap.sdc.tosca.services.YamlUtil; +import org.openecomp.core.externaltesting.api.ClientConfiguration; +import org.openecomp.core.externaltesting.api.RemoteTestingEndpointDefinition; + +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; + +public class TestingAccessConfigTest { + + @Test + public void testConfig() throws Exception { + try (InputStream fileInput = new FileInputStream(new File("src/test/data/externaltesting-configuration.yaml"))) { + YamlUtil yamlUtil = new YamlUtil(); + Object raw = yamlUtil.yamlToMap(fileInput); + TestingAccessConfig accessConfig = new ObjectMapper().convertValue(raw, TestingAccessConfig.class); + Assert.assertNotNull("client config available", accessConfig.getClient()); + } + } + +} |