summaryrefslogtreecommitdiffstats
path: root/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers
diff options
context:
space:
mode:
Diffstat (limited to 'mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers')
-rw-r--r--mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestDistributeEndpoint.java101
-rw-r--r--mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestFlowGraphController.java65
2 files changed, 38 insertions, 128 deletions
diff --git a/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestDistributeEndpoint.java b/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestDistributeEndpoint.java
deleted file mode 100644
index ad41b37..0000000
--- a/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestDistributeEndpoint.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * 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.
- * ============LICENSE_END=========================================================
- */
-package org.onap.dcae.runtime.web.controllers;
-
-import org.onap.dcae.runtime.web.Helper;
-import org.onap.dcae.runtime.web.models.DistributeGraphRequest;
-import org.onap.dcae.runtime.web.models.GraphRequest;
-import org.onap.dcae.runtime.web.service.GraphServiceImpl;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.web.client.TestRestTemplate;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.test.context.junit4.SpringRunner;
-
-import java.util.Map;
-
-import static junit.framework.TestCase.assertTrue;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
-import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT;
-import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
-
-// TODO: Unit test is failiing so ignoring for now since not familiar with unit testing in Spring.
-@Ignore
-@RunWith(SpringRunner.class)
-@SpringBootTest(webEnvironment = RANDOM_PORT)
-public class TestDistributeEndpoint {
-
- @Autowired
- private TestRestTemplate restTemplate;
-
- @Autowired
- private GraphServiceImpl graphService;
-
- private DistributeGraphRequest distributeGraphRequest;
-
- @Before
- public void setUp() throws Exception{
- //initialze the Main Graph
- GraphRequest graphRequest = new GraphRequest();
- graphRequest.setId("1234");
- graphRequest.setName("nifi-main");
- graphRequest.setDescription("mock graph");
- graphService.initializeMainGraph(graphRequest);
- distributeGraphRequest = new DistributeGraphRequest();
-
- }
-
- @Test
- @Ignore
- public void testAddNodesGeneratesBlueprints() throws Exception{
-
- distributeGraphRequest.setActions(Helper.getAddNodeActionsForRequest());
- Map<String,String> expectedResult = Helper.prepareExpectedResult();
-
- ResponseEntity<Map> response = restTemplate.postForEntity("/api/graph/1234/distribute",distributeGraphRequest,Map.class);
- assertEquals(HttpStatus.OK,response.getStatusCode());
- assertTrue(expectedResult.equals(response.getBody()));
-
-// mockMvc.perform(post("/api/graph/1234/distribute")
-// .contentType(MediaType.APPLICATION_JSON)
-// .content(TestUtils.convertObjectToJsonBytes(distributeGraphRequest)))
-// .andExpect(status().isOk());
-
-// assertEquals(Helper.loadFileContent("src/test/data/blueprints_samples/helloworld_test_2.yaml"),
-// Helper.loadFileContent("src/test/data/blueprints_from_tests/HelloWorld_blueprint.yaml"));
-// fail("Needs to complete the test");
- }
-
- @Test
- public void testAddNodesAndEdgeGeneratesCorrectBlueprints() throws Exception{
- distributeGraphRequest.setActions(Helper.getAddNodesWithEdge());
- Map<String,String> expectedResult = Helper.prepareExpectedResultForAddEdge();
-
- ResponseEntity<Map> response = restTemplate.postForEntity("/api/graph/1234/distribute",distributeGraphRequest,Map.class);
-
- assertEquals(HttpStatus.OK,response.getStatusCode());
- assertTrue(expectedResult.equals(response.getBody()));
-
- }
-}
diff --git a/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestFlowGraphController.java b/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestFlowGraphController.java
index e17e1c6..dbbfd8d 100644
--- a/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestFlowGraphController.java
+++ b/mod/runtimeapi/runtime-web/src/test/java/org/onap/dcae/runtime/web/controllers/TestFlowGraphController.java
@@ -1,6 +1,6 @@
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -17,38 +17,53 @@
*/
package org.onap.dcae.runtime.web.controllers;
+import java.util.HashMap;
+import java.util.LinkedList;
+
import org.onap.dcae.runtime.core.Edge;
import org.onap.dcae.runtime.core.FlowGraph;
import org.onap.dcae.runtime.core.Node;
+import org.onap.dcae.runtime.web.ClientMocking;
+import org.onap.dcae.runtime.web.Helper;
import org.onap.dcae.runtime.web.TestUtils;
+import org.onap.dcae.runtime.web.models.Action;
+import org.onap.dcae.runtime.web.models.DistributeGraphRequest;
import org.onap.dcae.runtime.web.models.GraphRequest;
import org.onap.dcae.runtime.web.service.GraphServiceImpl;
+import org.onap.dcae.runtime.web.service.BlueprintInventory;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
+import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
+import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.http.MediaType;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
import static org.mockito.Mockito.when;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
@RunWith(SpringRunner.class)
-@WebMvcTest
+@SpringBootTest
+@AutoConfigureMockMvc
public class TestFlowGraphController {
@Autowired
private MockMvc mockMvc;
- @MockBean
+ @Autowired
+ private BlueprintInventory blueprintInventory;
+
+ @Autowired
private GraphServiceImpl graphService;
+ private DistributeGraphRequest distributeGraphRequest;
private GraphRequest graphRequest;
@Before
@@ -57,41 +72,37 @@ public class TestFlowGraphController {
graphRequest.setId("1234");
graphRequest.setName("nifi-main");
graphRequest.setDescription("mock graph");
+ distributeGraphRequest = new DistributeGraphRequest();
+ ClientMocking inv = new ClientMocking()
+ .on("POST /ccsdk-app/api-if", "\"OK\"")
+ .applyTo(blueprintInventory);
}
@Test
public void testInitializeGraph() throws Exception{
graphRequest.setMain(true);
+ mockMvc.perform(get("/api/graph/main"))
+ .andExpect(status().isNotFound());
mockMvc.perform(post("/api/graph/main")
.contentType(MediaType.APPLICATION_JSON)
.content(TestUtils.convertObjectToJsonBytes(graphRequest)))
.andExpect(status().isCreated());
- }
-
- @Test
- public void testGetMainGraph() throws Exception{
- FlowGraph<Node, Edge> flowGraph = new FlowGraph<>("1234","nifi-main",true,"demo");
- when(this.graphService.getMainGraph()).thenReturn(flowGraph);
+ mockMvc.perform(post("/api/graph/main")
+ .contentType(MediaType.APPLICATION_JSON)
+ .content(TestUtils.convertObjectToJsonBytes(graphRequest)))
+ .andExpect(status().isConflict());
mockMvc.perform(get("/api/graph/main"))
.andExpect(status().isOk())
.andExpect(jsonPath("id").value("1234"))
.andExpect(jsonPath("name").value("nifi-main"));
+ distributeGraphRequest.setActions(Helper.getAddNodesWithEdge());
+ mockMvc.perform(post("/api/graph/" + graphRequest.getId() + "/distribute")
+ .contentType(MediaType.APPLICATION_JSON)
+ .content(TestUtils.convertObjectToJsonBytes(distributeGraphRequest)))
+ .andExpect(status().isOk());
+ mockMvc.perform(delete("/api/graph/main"))
+ .andExpect(status().isOk());
+ mockMvc.perform(delete("/api/graph/main"))
+ .andExpect(status().isNotFound());
}
-
-// @Test
-// public void testMainGraphNotFound() throws Exception{
-// when(this.graphService.getMainGraph()).thenReturn(null);
-// mockMvc.perform(get("/api/graph/main"))
-// .andExpect(status().isNotFound());
-// }
-
-// @Test
-// public void testConflictIfMainGraphExists() throws Exception{
-// when(this.graphService.initializeMainGraph(graphRequest)).thenThrow(new MainGraphAlreadyExistException(""));
-// mockMvc.perform(post("/api/graph/main")
-// .contentType(MediaType.APPLICATION_JSON)
-// .content(TestUtils.convertObjectToJsonBytes(graphRequest)))
-// .andExpect(status().isConflict());
-// }
-
}