summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-rest
diff options
context:
space:
mode:
Diffstat (limited to 'cps-ncmp-rest')
-rw-r--r--cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapper.java21
-rw-r--r--cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy25
-rw-r--r--cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapperTest.groovy36
3 files changed, 17 insertions, 65 deletions
diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapper.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapper.java
index ce32068299..5f4b311186 100644
--- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapper.java
+++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapper.java
@@ -25,7 +25,6 @@ import org.mapstruct.Mapping;
import org.mapstruct.Named;
import org.mapstruct.NullValueCheckStrategy;
import org.mapstruct.NullValuePropertyMappingStrategy;
-import org.onap.cps.ncmp.api.inventory.CmHandleState;
import org.onap.cps.ncmp.api.inventory.CompositeState;
import org.onap.cps.ncmp.rest.model.DataStores;
import org.onap.cps.ncmp.rest.model.RestOutputCmHandleState;
@@ -36,7 +35,7 @@ import org.onap.cps.ncmp.rest.model.SyncState;
public interface RestOutputCmHandleStateMapper {
@Mapping(target = "dataSyncState", source = "dataStores", qualifiedByName = "dataStoreToDataSyncState")
- @Mapping(target = "cmHandleState", source = "cmhandleState", qualifiedByName = "cmHandleStateEnumToString")
+ @Mapping(target = "lockReason.reason", source = "lockReason.lockReasonCategory")
RestOutputCmHandleState toRestOutputCmHandleState(CompositeState compositeState);
/**
@@ -54,13 +53,6 @@ public interface RestOutputCmHandleStateMapper {
final DataStores dataStores = new DataStores();
- if (compositeStateDataStore.getRunningDataStore() != null) {
- final SyncState runningSyncState = new SyncState();
- runningSyncState.setState(compositeStateDataStore.getRunningDataStore().getSyncState());
- runningSyncState.setLastSyncTime(compositeStateDataStore.getRunningDataStore().getLastSyncTime());
- dataStores.setRunning(runningSyncState);
- }
-
if (compositeStateDataStore.getOperationalDataStore() != null) {
final SyncState operationalSyncState = new SyncState();
operationalSyncState.setState(compositeStateDataStore.getOperationalDataStore().getSyncState());
@@ -73,15 +65,4 @@ public interface RestOutputCmHandleStateMapper {
}
- /**
- * Converts cmHandleState enum value to equivalent string.
- *
- * @param cmHandleState cm handle state enum
- * @return cm handle state as string
- */
- @Named("cmHandleStateEnumToString")
- static String toCmHandleState(final CmHandleState cmHandleState) {
- return cmHandleState.name();
- }
-
}
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 3315304258..60ea736d72 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
@@ -37,7 +37,6 @@ import java.time.format.DateTimeFormatter
import static org.onap.cps.ncmp.api.impl.operations.DmiRequestBody.OperationEnum.PATCH
import static org.onap.cps.ncmp.api.inventory.CompositeState.DataStores
-import static org.onap.cps.ncmp.api.inventory.CompositeState.LockReason
import static org.onap.cps.ncmp.api.inventory.CompositeState.Operational
import static org.onap.cps.ncmp.api.inventory.CompositeState.Running
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete
@@ -256,30 +255,20 @@ class NetworkCmProxyControllerSpec extends Specification {
given: 'an endpoint and a cm handle'
def cmHandleDetailsEndpoint = "$ncmpBasePathV1/ch/some-cm-handle"
and: 'an existing ncmp service cm handle'
- def cmHandleId = 'some-cm-handle'
- def dmiProperties = [ prop:'some DMI property' ]
- def publicProperties = [ "public prop":'some public property' ]
- def compositeState = new CompositeState(cmhandleState: CmHandleState.ADVISED,
- lockReason: LockReason.builder().reason('LOCKED_OTHER').details("lock-misbehaving-details").build(),
+ def compositeState = new CompositeState(cmHandleState: CmHandleState.ADVISED,
lastUpdateTime: formattedDateAndTime.toString(),
- dataSyncEnabled: false,
dataStores: dataStores())
- def ncmpServiceCmHandle = new NcmpServiceCmHandle(cmHandleId: cmHandleId, dmiProperties: dmiProperties, publicProperties: publicProperties, compositeState: compositeState)
+ def ncmpServiceCmHandle = new NcmpServiceCmHandle(cmHandleId: 'some-cm-handle', compositeState: compositeState)
and: 'the service method is invoked with the cm handle id'
1 * mockNetworkCmProxyDataService.getNcmpServiceCmHandle('some-cm-handle') >> ncmpServiceCmHandle
when: 'the cm handle details api is invoked'
def response = mvc.perform(get(cmHandleDetailsEndpoint)).andReturn().response
then: 'the correct response is returned'
response.status == HttpStatus.OK.value()
- and: 'the response returns public properties and the correct cm handle states'
- response.contentAsString.contains('publicCmHandleProperties')
- response.contentAsString.contains('LOCKED_OTHER')
- response.contentAsString.contains('lock-misbehaving-details')
+ and: 'the response returns the correct state and timestamp'
+ response.contentAsString.contains('some-cm-handle')
response.contentAsString.contains('ADVISED')
- response.contentAsString.contains('NONE_REQUESTED')
response.contentAsString.contains('2022-12-31T20:30:40.000+0000')
- and: 'the content does not contain dmi properties'
- !response.contentAsString.contains("some DMI property")
}
def 'Get Cm Handle public properties by Cm Handle id.' () {
@@ -387,11 +376,7 @@ class NetworkCmProxyControllerSpec extends Specification {
DataStores.builder()
.operationalDataStore(Operational.builder()
.syncState('NONE_REQUESTED')
- .lastSyncTime(formattedDateAndTime.toString()).build())
- .runningDataStore(Running.builder()
- .syncState('NONE_REQUESTED')
- .lastSyncTime(formattedDateAndTime.toString()).build())
- .build()
+ .lastSyncTime(formattedDateAndTime.toString()).build()).build()
}
}
diff --git a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapperTest.groovy b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapperTest.groovy
index 4560ae4818..22c9fe6056 100644
--- a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapperTest.groovy
+++ b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/mapper/RestOutputCmHandleStateMapperTest.groovy
@@ -22,7 +22,8 @@ package org.onap.cps.ncmp.rest.mapper
import org.mapstruct.factory.Mappers
import org.onap.cps.ncmp.api.inventory.CmHandleState
-import org.onap.cps.ncmp.api.inventory.CompositeState
+import org.onap.cps.ncmp.api.inventory.CompositeStateBuilder
+import org.onap.cps.ncmp.api.inventory.LockReasonCategory
import org.onap.cps.ncmp.rest.model.RestOutputCmHandleState
import spock.lang.Specification
@@ -30,10 +31,6 @@ import java.time.OffsetDateTime
import java.time.ZoneOffset
import java.time.format.DateTimeFormatter
-import static org.onap.cps.ncmp.api.inventory.CompositeState.DataStores
-import static org.onap.cps.ncmp.api.inventory.CompositeState.LockReason
-import static org.onap.cps.ncmp.api.inventory.CompositeState.Operational
-
class RestOutputCmHandleStateMapperTest extends Specification {
def formattedDateAndTime = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
@@ -42,11 +39,12 @@ class RestOutputCmHandleStateMapperTest extends Specification {
def 'Composite State to Rest Output CmHandleState'() {
given: 'a composite state model'
- def compositeState = new CompositeState(cmhandleState: CmHandleState.ADVISED,
- lockReason: LockReason.builder().reason('LOCKED_OTHER').details('locked-other-details').build(),
- lastUpdateTime: formattedDateAndTime.toString(),
- dataSyncEnabled: false,
- dataStores: dataStores())
+ def compositeState = new CompositeStateBuilder()
+ .withCmHandleState(CmHandleState.ADVISED)
+ .withLastUpdatedTime(formattedDateAndTime.toString())
+ .withLockReason(LockReasonCategory.LOCKED_MISBEHAVING, 'locked other details')
+ .withOperationalDataStores('SYNCHRONIZED', formattedDateAndTime).build()
+ compositeState.setDataSyncEnabled(false)
when: 'mapper is called'
def result = objectUnderTest.toRestOutputCmHandleState(compositeState)
then: 'result is of the correct type'
@@ -54,22 +52,10 @@ class RestOutputCmHandleStateMapperTest extends Specification {
and: 'mapped result should have correct values'
assert !result.dataSyncEnabled
assert result.lastUpdateTime == formattedDateAndTime
- assert result.lockReason.reason == 'LOCKED_OTHER'
- assert result.lockReason.details == 'locked-other-details'
+ assert result.lockReason.reason == 'LOCKED_MISBEHAVING'
+ assert result.lockReason.details == 'locked other details'
assert result.cmHandleState == CmHandleState.ADVISED.name()
- assert result.dataSyncState.operational != null
- assert result.dataSyncState.running != null
+ assert result.dataSyncState.operational.getState() != null
}
- def dataStores() {
-
- return DataStores.builder()
- .operationalDataStore(Operational.builder()
- .syncState('NONE_REQUESTED')
- .lastSyncTime(formattedDateAndTime.toString()).build())
- .runningDataStore(CompositeState.Running.builder()
- .syncState('NONE_REQUESTED')
- .lastSyncTime(formattedDateAndTime.toString()).build())
- .build()
- }
}