X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cps-ncmp-rest%2Fsrc%2Ftest%2Fgroovy%2Forg%2Fonap%2Fcps%2Fncmp%2Frest%2Fcontroller%2FNetworkCmProxyInventoryControllerSpec.groovy;h=4addf7bdf4d8523be1e432ffb1f09e6ef885bd2f;hb=20b4f9cf0b662de4a7665b2a82593ef0205f5e06;hp=e558ac45bfca9b42d9c6e3aaeb2b9c34bc5b4d35;hpb=bc742a1dbe39a3269abab9e62a9d489f460144b0;p=cps.git diff --git a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy index e558ac45b..4addf7bdf 100644 --- a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy +++ b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy @@ -22,6 +22,10 @@ package org.onap.cps.ncmp.rest.controller import com.fasterxml.jackson.databind.ObjectMapper import org.onap.cps.TestUtils import org.onap.cps.ncmp.api.NetworkCmProxyDataService +import org.onap.cps.ncmp.api.impl.NetworkCmProxyDataServiceImpl +import org.onap.cps.ncmp.api.models.CmHandle +import org.onap.cps.ncmp.api.models.DmiPluginRegistration +import org.onap.cps.ncmp.api.models.PersistenceCmHandle import org.spockframework.spring.SpringBean import org.springframework.beans.factory.annotation.Autowired import org.springframework.beans.factory.annotation.Value @@ -61,5 +65,28 @@ class NetworkCmProxyInventoryControllerSpec extends Specification { response.status == HttpStatus.CREATED.value() } + def 'Dmi plugin registration with #scenario' () { + given: 'jsonData, cmHandle, & DmiPluginRegistration' + def jsonData = TestUtils.getResourceFileContent('dmi_registration_combined_valid.json' ) + def cmHandle = new CmHandle(cmHandleID : 'example-name') + def expectedDmiPluginRegistration = new DmiPluginRegistration( + dmiPlugin: 'service1', + dmiDataPlugin: '', + dmiModelPlugin: '', + createdCmHandles: [cmHandle]) + when: 'post request is performed & registration is called with correct DMI plugin information' + def response = mvc.perform( + post("$ncmpBasePathV1/ch") + .contentType(MediaType.APPLICATION_JSON) + .content(jsonData) + ).andReturn().response + then: 'no NcmpException is thrown & updateDmiRegistrationAndSyncModule is called with correct parameters' + 1 * mockNetworkCmProxyDataService.updateDmiRegistrationAndSyncModule({ + it.getDmiPlugin() == expectedDmiPluginRegistration.getDmiPlugin() + it.getDmiDataPlugin() == expectedDmiPluginRegistration.getDmiDataPlugin() + it.getDmiModelPlugin() == expectedDmiPluginRegistration.getDmiModelPlugin() + it.getCreatedCmHandles().get(0).getCmHandleID() == expectedDmiPluginRegistration.getCreatedCmHandles().get(0).getCmHandleID() + }) + } }