diff options
author | mpriyank <priyank.maheshwari@est.tech> | 2022-05-26 20:25:40 +0100 |
---|---|---|
committer | mpriyank <priyank.maheshwari@est.tech> | 2022-06-01 10:25:44 +0100 |
commit | 5d3ed6ff2fe76e2510867379fdf58d4e99b2cc9f (patch) | |
tree | 31317f6742d694342f3188c1e2ac662e4b87666e /cps-ncmp-service | |
parent | e7ba1dee7d0431d00a67e078434778b559019e98 (diff) |
Fixing CompositeState mapping
- Mapper null check
- NcmpServiceCmHandle mapping for the new composite state
- Added global parameter for jackson to include only NON_NULL attributes
in the response
Issue-ID: CPS-1066
Change-Id: I1924fef45345c77873f9c788baa701311e72bea7
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
Diffstat (limited to 'cps-ncmp-service')
2 files changed, 11 insertions, 5 deletions
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImpl.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImpl.java index 240e3c57d1..64942e4bbb 100755 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImpl.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImpl.java @@ -193,6 +193,7 @@ public class NetworkCmProxyDataServiceImpl implements NetworkCmProxyDataService final List<YangModelCmHandle.Property> dmiProperties = yangModelCmHandle.getDmiProperties(); final List<YangModelCmHandle.Property> publicProperties = yangModelCmHandle.getPublicProperties(); ncmpServiceCmHandle.setCmHandleId(yangModelCmHandle.getId()); + ncmpServiceCmHandle.setCompositeState(yangModelCmHandle.getCompositeState()); setDmiProperties(dmiProperties, ncmpServiceCmHandle); setPublicProperties(publicProperties, ncmpServiceCmHandle); return ncmpServiceCmHandle; diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImplSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImplSpec.groovy index 161cf9892f..be13344cf2 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImplSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/NetworkCmProxyDataServiceImplSpec.groovy @@ -24,6 +24,8 @@ package org.onap.cps.ncmp.api.impl import org.onap.cps.ncmp.api.impl.operations.YangModelCmHandleRetriever import org.onap.cps.ncmp.api.impl.yangmodels.YangModelCmHandle +import org.onap.cps.ncmp.api.inventory.CmHandleState +import org.onap.cps.ncmp.api.inventory.CompositeState import org.onap.cps.ncmp.api.models.DmiPluginRegistration import org.onap.cps.ncmp.api.models.NcmpServiceCmHandle import org.onap.cps.spi.exceptions.DataValidationException @@ -167,16 +169,19 @@ class NetworkCmProxyDataServiceImplSpec extends Specification { def 'Get a cm handle.'() { given: 'the system returns a yang modelled cm handle' def dmiServiceName = 'some service name' - def dmiProperties = [new YangModelCmHandle.Property('aDmiProperty', 'a dmi value')] - def publicProperties = [new YangModelCmHandle.Property('aPublicProperty', 'a public value')] - def yangModelCmHandle = new YangModelCmHandle(id:'some-cm-handle', dmiServiceName: dmiServiceName, dmiProperties: dmiProperties, publicProperties: publicProperties) + def dmiProperties = [new YangModelCmHandle.Property('Book', 'Romance Novel')] + def publicProperties = [new YangModelCmHandle.Property('Public Book', 'Public Romance Novel')] + def compositeState = new CompositeState(cmhandleState: 'ADVISED') + def yangModelCmHandle = new YangModelCmHandle(id: 'some-cm-handle', dmiServiceName: dmiServiceName, + dmiProperties: dmiProperties, publicProperties: publicProperties, compositeState: compositeState) 1 * mockYangModelCmHandleRetriever.getYangModelCmHandle('some-cm-handle') >> yangModelCmHandle when: 'getting cm handle details for a given cm handle id from ncmp service' def result = objectUnderTest.getNcmpServiceCmHandle('some-cm-handle') then: 'the result returns the correct data' result.cmHandleId == 'some-cm-handle' - result.dmiProperties ==[ aDmiProperty:'a dmi value' ] - result.publicProperties == [ aPublicProperty:'a public value' ] + result.dmiProperties ==[ Book:'Romance Novel' ] + result.publicProperties == [ "Public Book":'Public Romance Novel' ] + result.compositeState.cmhandleState == CmHandleState.ADVISED } def 'Get a cm handle with an invalid id.'() { |