diff options
author | 2023-10-23 14:40:25 +0100 | |
---|---|---|
committer | 2023-10-23 16:19:50 +0100 | |
commit | 4266fbbaad4ab3741accf1b3911278835ca19795 (patch) | |
tree | 8bef45b9fd2c3e15a40e455d1ef586eaee2c339c /cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/CompositeStateBuilderSpec.groovy | |
parent | 3ccd62ed40e96dbe2970de1433b2ebdbe014d4aa (diff) |
Introduce and use new Hazelcast map pt. 2
- modified ModuleSyncService
- created ModuleSetTagCacheConfig and tests
- ensure both Create and Upgrade cm Handle use cases work
- Moved inventory pkg to its right patha as production code.
Issue-ID: CPS-1859
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
Change-Id: I173dcd81fe2e74d86d85365b2ead461302cad974
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
Diffstat (limited to 'cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/CompositeStateBuilderSpec.groovy')
-rw-r--r-- | cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/CompositeStateBuilderSpec.groovy | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/CompositeStateBuilderSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/CompositeStateBuilderSpec.groovy deleted file mode 100644 index c2cdd9bc2..000000000 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/CompositeStateBuilderSpec.groovy +++ /dev/null @@ -1,92 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2022 Bell Canada - * Modifications Copyright (C) 2022-2023 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package org.onap.cps.ncmp.api.inventory - -import org.onap.cps.ncmp.api.impl.inventory.CmHandleState -import org.onap.cps.ncmp.api.impl.inventory.CompositeState -import org.onap.cps.ncmp.api.impl.inventory.CompositeStateBuilder -import org.onap.cps.ncmp.api.impl.inventory.DataStoreSyncState -import org.onap.cps.ncmp.api.impl.inventory.LockReasonCategory -import org.onap.cps.spi.model.DataNode -import org.onap.cps.spi.model.DataNodeBuilder -import spock.lang.Specification - -import java.time.OffsetDateTime -import java.time.ZoneOffset -import java.time.format.DateTimeFormatter - -class CompositeStateBuilderSpec extends Specification { - - def formattedDateAndTime = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZ") - .format(OffsetDateTime.of(2022, 12, 31, 20, 30, 40, 1, ZoneOffset.UTC)) - - def static cmHandleId = 'myHandle1' - def static cmHandleXpath = "/dmi-registry/cm-handles[@id='${cmHandleId}/state']" - def static stateDataNodes = [new DataNodeBuilder().withXpath("/dmi-registry/cm-handles[@id='${cmHandleId}']/state/lock-reason") - .withLeaves(['reason': 'MODULE_SYNC_FAILED', 'details': 'lock details']).build(), - new DataNodeBuilder().withXpath("/dmi-registry/cm-handles[@id='${cmHandleId}']/state/datastores") - .withChildDataNodes(Arrays.asList(new DataNodeBuilder() - .withXpath("/dmi-registry/cm-handles[@id='${cmHandleId}']/state/datastores/operational") - .withLeaves(['sync-state': 'UNSYNCHRONIZED']).build())).build()] - def static cmHandleDataNode = new DataNode(xpath: cmHandleXpath, childDataNodes: stateDataNodes, leaves: ['cm-handle-state': 'ADVISED']) - - def "Composite State Specification"() { - when: 'using composite state builder ' - def compositeState = new CompositeStateBuilder().withCmHandleState(CmHandleState.ADVISED) - .withLockReason(LockReasonCategory.MODULE_SYNC_FAILED,"").withOperationalDataStores(DataStoreSyncState.UNSYNCHRONIZED, - formattedDateAndTime.toString()).withLastUpdatedTime(formattedDateAndTime).build() - then: 'it matches expected cm handle state and data store sync state' - assert compositeState.cmHandleState == CmHandleState.ADVISED - assert compositeState.dataStores.operationalDataStore.dataStoreSyncState == DataStoreSyncState.UNSYNCHRONIZED - } - - def "Build composite state from DataNode "() { - given: "a Data Node " - new DataNode(leaves: ['cm-handle-state': 'ADVISED']) - when: 'build from data node function is invoked' - def compositeState = new CompositeStateBuilder().fromDataNode(cmHandleDataNode).build() - then: 'it matches expected state model as JSON' - assert compositeState.cmHandleState == CmHandleState.ADVISED - } - - def 'CompositeStateBuilder build'() { - given: 'A CompositeStateBuilder with all private fields set' - def finalCompositeStateBuilder = new CompositeStateBuilder() - .withCmHandleState(CmHandleState.ADVISED) - .withLastUpdatedTime(formattedDateAndTime.toString()) - .withLockReason(LockReasonCategory.MODULE_SYNC_FAILED, 'locked details') - .withOperationalDataStores(DataStoreSyncState.SYNCHRONIZED, formattedDateAndTime) - when: 'build is called' - def result = finalCompositeStateBuilder.build() - then: 'result is of the correct type' - assert result.class == CompositeState.class - and: 'built result should have correct values' - assert !result.getDataSyncEnabled() - assert result.getLastUpdateTime() == formattedDateAndTime - assert result.getLockReason().getLockReasonCategory() == LockReasonCategory.MODULE_SYNC_FAILED - assert result.getLockReason().getDetails() == 'locked details' - assert result.getCmHandleState() == CmHandleState.ADVISED - assert result.getDataStores().getOperationalDataStore().getDataStoreSyncState() == DataStoreSyncState.SYNCHRONIZED - assert result.getDataStores().getOperationalDataStore().getLastSyncTime() == formattedDateAndTime - } - -} |