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>
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 0000000..5f302be
--- /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());
+  }
+}
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 411be2f..0000000
--- 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<VtpTestExecutionRequest> 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<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 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<VtpTestExecutionRequest> 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.
-    }
-  }
-}
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 0000000..089c3c1
--- /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-api/src/test/java/org/openecomp/core/externaltesting/api/ConfigurationTest.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ConfigurationTest.java
new file mode 100644
index 0000000..f637632
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ConfigurationTest.java
@@ -0,0 +1,66 @@
+/*
+ * 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.api;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import org.junit.Assert;
+import org.junit.Test;
+import org.onap.sdc.tosca.services.YamlUtil;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+
+public class ConfigurationTest {
+
+  @Test
+  public void testClientConfig() {
+    // a brain dead test of the setter and getter.
+    // future tests for more complex config to come.
+    ClientConfiguration cc = new ClientConfiguration();
+    cc.setEnabled(true);
+    Assert.assertTrue("client configuration setter", cc.isEnabled());
+    cc.setEnabled(false);
+    Assert.assertFalse("client configuration setter", cc.isEnabled());
+  }
+
+  @Test
+  public void testEndpointDefinition() {
+    RemoteTestingEndpointDefinition def = new RemoteTestingEndpointDefinition();
+    def.setId("vtp");
+    def.setEnabled(true);
+    def.setTitle("VTP");
+    def.setApiKey("FOOBARBAZ");
+    def.setUrl("http://example.com/vtptesting");
+    def.setScenarioFilter("c.*");
+    def.setConfig("vtp,VTP,true,http://example.com/vtptesting,c.*,FOO");
+
+    Assert.assertEquals("code", "VTP", def.getTitle());
+    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
similarity index 97%
rename from openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ErrorBodyTests.java
rename to openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ErrorBodyTest.java
index 216ff35..788e5d6 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 @@
 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
similarity index 88%
rename from openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTests.java
rename to openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java
index bfa07ec..541f636 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.util.Map;
 import java.util.UUID;
 
-public class ExecutionRequestTests {
+public class ExecutionRequestTest {
 
   @Test
   public void testTestCase() throws Exception {
@@ -89,6 +89,19 @@
     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 62b129c..67cf717 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 @@
 
 @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/ConfigurationTests.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ConfigurationTests.java
deleted file mode 100644
index 05fc9e3..0000000
--- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ConfigurationTests.java
+++ /dev/null
@@ -1,80 +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.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 ConfigurationTests {
-
-  @Test
-  public void testClientConfig() {
-    // a brain dead test of the setter and getter.
-    // future tests for more complex config to come.
-    ClientConfiguration cc = new ClientConfiguration();
-    cc.setEnabled(true);
-    Assert.assertTrue("client configuration setter", cc.isEnabled());
-    cc.setEnabled(false);
-    Assert.assertFalse("client configuration setter", cc.isEnabled());
-  }
-
-  @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");
-    def.setEnabled(true);
-    def.setTitle("VTP");
-    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.*");
-
-    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());
-
-    boolean matches = def.getScenarioFilterPattern().matcher("certification").matches();
-    Assert.assertTrue("pattern", matches);
-
-  }
-}
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
similarity index 99%
rename from openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTests.java
rename to openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java
index 2233f85..04ddf6e 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.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 d9e4612..6d46452 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 @@
 
 @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 0000000..698133b
--- /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());
+    }
+  }
+
+}