From 1baf48d05be1cd32e22c065ebfec218da100d1f2 Mon Sep 17 00:00:00 2001 From: Ruslan Kashapov Date: Fri, 7 May 2021 10:46:27 +0300 Subject: Create list-node elements (part3): NCMP REST and service layers Issue-ID: CPS-360 Change-Id: Id8be89f19750d72bae334491aea4a59f21c7ecd6 Signed-off-by: Ruslan Kashapov --- .../ncmp/rest/controller/NetworkCmProxyController.java | 7 +++++++ .../rest/controller/NetworkCmProxyControllerSpec.groovy | 17 +++++++++++++++++ 2 files changed, 24 insertions(+) (limited to 'cps-ncmp-rest/src') diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java index 3c8a04e82..484a21ae6 100755 --- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java +++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java @@ -53,6 +53,13 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { return new ResponseEntity<>(HttpStatus.CREATED); } + @Override + public ResponseEntity addListNodeElements(final String jsonData, final String parentNodeXpath, + final String cmHandle) { + networkCmProxyDataService.addListNodeElements(cmHandle, parentNodeXpath, jsonData); + return new ResponseEntity<>(HttpStatus.CREATED); + } + @Override public ResponseEntity getNodeByCmHandleAndXpath(final String cmHandle, @Valid final String xpath, @Valid final Boolean includeDescendants) { diff --git a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy index ea3c16d4c..45e8f1194 100644 --- a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy +++ b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy @@ -105,6 +105,23 @@ class NetworkCmProxyControllerSpec extends Specification { 'parent node xpath' | '/xpath' || '/xpath' } + def 'Add list-node elements.'() { + given: 'json data and parent node xpath' + def jsonData = 'json data' + def parentNodeXpath = 'parent node xpath' + when: 'post request is performed' + def response = mvc.perform( + post("$dataNodeBaseEndpoint/cm-handles/$cmHandle/list-node") + .contentType(MediaType.APPLICATION_JSON) + .content(jsonData) + .param('xpath', parentNodeXpath) + ).andReturn().response + then: 'the service method is invoked once with expected parameters' + 1 * mockNetworkCmProxyDataService.addListNodeElements(cmHandle, parentNodeXpath, jsonData) + and: 'response status indicates success' + response.status == HttpStatus.CREATED.value() + } + def 'Update data node leaves.'() { given: 'json data' def jsonData = 'json data' -- cgit 1.2.3-korg