diff options
author | Ruslan Kashapov <ruslan.kashapov@pantheon.tech> | 2021-04-19 12:40:01 +0300 |
---|---|---|
committer | Ruslan Kashapov <ruslan.kashapov@pantheon.tech> | 2021-04-20 12:58:55 +0300 |
commit | 24bf350947acb7fcb62878932d520387bc922a96 (patch) | |
tree | 447c8ad367db6769c5e6bd66f85fcf059524999b /cps-rest/src/test | |
parent | 3da52076907385c8a42b817f7aceb65e0dcb7cdd (diff) |
Create child data node (part 1): CPS service + REST
Issue-ID: CPS-337
Change-Id: I9c5c62d144b5301ac80e2b82a5cc66a980dad011
Signed-off-by: Ruslan Kashapov <ruslan.kashapov@pantheon.tech>
Diffstat (limited to 'cps-rest/src/test')
-rwxr-xr-x | cps-rest/src/test/groovy/org/onap/cps/rest/controller/DataRestControllerSpec.groovy | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/cps-rest/src/test/groovy/org/onap/cps/rest/controller/DataRestControllerSpec.groovy b/cps-rest/src/test/groovy/org/onap/cps/rest/controller/DataRestControllerSpec.groovy index ef43641ea8..713dda1403 100755 --- a/cps-rest/src/test/groovy/org/onap/cps/rest/controller/DataRestControllerSpec.groovy +++ b/cps-rest/src/test/groovy/org/onap/cps/rest/controller/DataRestControllerSpec.groovy @@ -90,7 +90,8 @@ class DataRestControllerSpec extends Specification { dataNodeBaseEndpoint = "$basePath/v1/dataspaces/$dataspaceName" } - def 'Create a node.'() { + @Unroll + def 'Create a node: #scenario.'() { given: 'some json to create a data node' def endpoint = "$dataNodeBaseEndpoint/anchors/$anchorName/nodes" def json = 'some json (this is not validated)' @@ -98,12 +99,38 @@ class DataRestControllerSpec extends Specification { def response = mvc.perform( post(endpoint) - .contentType(MediaType.APPLICATION_JSON).content(json)) - .andReturn().response + .contentType(MediaType.APPLICATION_JSON) + .param('xpath', parentNodeXpath) + .content(json) + ).andReturn().response then: 'a created response is returned' response.status == HttpStatus.CREATED.value() then: 'the java API was called with the correct parameters' 1 * mockCpsDataService.saveData(dataspaceName, anchorName, json) + where: 'following xpath parameters are are used' + scenario | parentNodeXpath + 'no xpath parameter' | '' + 'xpath parameter point root' | '/' + } + + def 'Create a child node'() { + given: 'some json to create a data node' + def endpoint = "$dataNodeBaseEndpoint/anchors/$anchorName/nodes" + def json = 'some json (this is not validated)' + and: 'parent node xpath' + def parentNodeXpath = 'some xpath' + when: 'post is invoked with datanode endpoint and json' + def response = + mvc.perform( + post(endpoint) + .contentType(MediaType.APPLICATION_JSON) + .param('xpath', parentNodeXpath) + .content(json) + ).andReturn().response + then: 'a created response is returned' + response.status == HttpStatus.CREATED.value() + then: 'the java API was called with the correct parameters' + 1 * mockCpsDataService.saveData(dataspaceName, anchorName, parentNodeXpath, json) } @Unroll |