From 28b41814dedc2c26c560edd869702ffbfb25d818 Mon Sep 17 00:00:00 2001 From: leventecsanyi Date: Thu, 7 Dec 2023 14:02:14 +0100 Subject: [PATCH] Update Model to allow Persisting of alternateId - added new dmi model registry and modified tests Issue-ID: CPS-1989 Signed-off-by: leventecsanyi Change-Id: I576a5a0704fe28924dcc304c276fec5665b52764 --- .../onap/cps/ncmp/init/InventoryModelLoader.java | 4 ++-- .../resources/models/dmi-registry@2023-11-27.yang | 25 ++++++++++++++++++---- .../cps/ncmp/init/InventoryModelLoaderSpec.groovy | 6 +++--- .../performance/base/NcmpPerfTestBase.groovy | 2 +- .../ncmp-registry/dmi-registry@2023-11-27.yang | 9 ++++++++ 5 files changed, 36 insertions(+), 10 deletions(-) rename integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2022-05-10.yang => cps-ncmp-service/src/main/resources/models/dmi-registry@2023-11-27.yang (74%) rename cps-ncmp-service/src/main/resources/models/dmi-registry@2023-08-23.yang => integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2023-11-27.yang (94%) diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/InventoryModelLoader.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/InventoryModelLoader.java index b805cdcd84..a27eb6f7ce 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/InventoryModelLoader.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/init/InventoryModelLoader.java @@ -33,8 +33,8 @@ import org.springframework.stereotype.Service; @Service public class InventoryModelLoader extends AbstractModelLoader { - private static final String NEW_MODEL_FILE_NAME = "dmi-registry@2023-08-23.yang"; - private static final String NEW_SCHEMA_SET_NAME = "dmi-registry-2023-08-23"; + private static final String NEW_MODEL_FILE_NAME = "dmi-registry@2023-11-27.yang"; + private static final String NEW_SCHEMA_SET_NAME = "dmi-registry-2023-11-27"; public InventoryModelLoader(final CpsAdminService cpsAdminService, final CpsModuleService cpsModuleService, diff --git a/integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2022-05-10.yang b/cps-ncmp-service/src/main/resources/models/dmi-registry@2023-11-27.yang similarity index 74% rename from integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2022-05-10.yang rename to cps-ncmp-service/src/main/resources/models/dmi-registry@2023-11-27.yang index 77517968c6..808bbdd1bc 100644 --- a/integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2022-05-10.yang +++ b/cps-ncmp-service/src/main/resources/models/dmi-registry@2023-11-27.yang @@ -8,19 +8,29 @@ module dmi-registry { contact "toine.siebelink@est.tech"; + revision "2023-11-27" { + description + "Added alternate-id"; + } + + revision "2023-08-23" { + description + "Added module-set-tag"; + } + revision "2022-05-10" { description - "Added DataSyncEnabled, SyncState with State, LastSyncTime, DataStoreSyncState with Operational and Running syncstate"; + "Added data-sync-enabled, sync-state with state, last-sync-time, data-store-sync-state with operational and running syncstate"; } revision "2022-02-10" { description - "Added State, LockReason, LockReasonDetails to aid with cmHandle sync and timestamp to aid with retry/timeout scenarios"; + "Added state, lock-reason, lock-reason-details to aid with cmHandle sync and timestamp to aid with retry/timeout scenarios"; } revision "2021-12-13" { description - "Added new list of public additional properties for a Cm-Handle which are exposed to clients of the NCMP interface"; + "Added new list of public-properties and additional-properties for a Cm-Handle which are exposed to clients of the NCMP interface"; } revision "2021-10-20" { @@ -75,6 +85,12 @@ module dmi-registry { leaf dmi-model-service-name { type string; } + leaf module-set-tag { + type string; + } + leaf alternate-id { + type string; + } list additional-properties { key "name"; @@ -120,4 +136,5 @@ module dmi-registry { } } } -} \ No newline at end of file +} + diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/InventoryModelLoaderSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/InventoryModelLoaderSpec.groovy index 43e0f69b3f..4eb2ca3c73 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/InventoryModelLoaderSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/init/InventoryModelLoaderSpec.groovy @@ -49,7 +49,7 @@ class InventoryModelLoaderSpec extends Specification { def loggingListAppender void setup() { - expectedYangResourceToContentMap = objectUnderTest.createYangResourcesToContentMap('dmi-registry@2023-08-23.yang') + expectedYangResourceToContentMap = objectUnderTest.createYangResourcesToContentMap('dmi-registry@2023-11-27.yang') logger.setLevel(Level.DEBUG) loggingListAppender = new ListAppender() logger.addAppender(loggingListAppender) @@ -68,9 +68,9 @@ class InventoryModelLoaderSpec extends Specification { when: 'the application is ready' objectUnderTest.onApplicationEvent(Mock(ApplicationReadyEvent)) then: 'the module service is used to create the new schema set from the correct resource' - 1 * mockCpsModuleService.createSchemaSet(NCMP_DATASPACE_NAME, 'dmi-registry-2023-08-23', expectedYangResourceToContentMap) + 1 * mockCpsModuleService.createSchemaSet(NCMP_DATASPACE_NAME, 'dmi-registry-2023-11-27', expectedYangResourceToContentMap) and: 'the admin service is used to update the anchor' - 1 * mockCpsAdminService.updateAnchorSchemaSet(NCMP_DATASPACE_NAME, NCMP_DMI_REGISTRY_ANCHOR, 'dmi-registry-2023-08-23') + 1 * mockCpsAdminService.updateAnchorSchemaSet(NCMP_DATASPACE_NAME, NCMP_DMI_REGISTRY_ANCHOR, 'dmi-registry-2023-11-27') and: 'No schema sets are being removed by the module service (yet)' 0 * mockCpsModuleService.deleteSchemaSet(NCMP_DATASPACE_NAME, _, _) } diff --git a/integration-test/src/test/groovy/org/onap/cps/integration/performance/base/NcmpPerfTestBase.groovy b/integration-test/src/test/groovy/org/onap/cps/integration/performance/base/NcmpPerfTestBase.groovy index bef42248f9..12b04be2e0 100644 --- a/integration-test/src/test/groovy/org/onap/cps/integration/performance/base/NcmpPerfTestBase.groovy +++ b/integration-test/src/test/groovy/org/onap/cps/integration/performance/base/NcmpPerfTestBase.groovy @@ -72,7 +72,7 @@ class NcmpPerfTestBase extends PerfTestBase { } def createRegistrySchemaSet() { - def modelAsString = readResourceDataFile('ncmp-registry/dmi-registry@2022-05-10.yang') + def modelAsString = readResourceDataFile('ncmp-registry/dmi-registry@2023-11-27.yang') cpsModuleService.createSchemaSet(NCMP_PERFORMANCE_TEST_DATASPACE, REGISTRY_SCHEMA_SET, [registry: modelAsString]) } diff --git a/cps-ncmp-service/src/main/resources/models/dmi-registry@2023-08-23.yang b/integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2023-11-27.yang similarity index 94% rename from cps-ncmp-service/src/main/resources/models/dmi-registry@2023-08-23.yang rename to integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2023-11-27.yang index bb7604d91a..e3152cb4a1 100644 --- a/cps-ncmp-service/src/main/resources/models/dmi-registry@2023-08-23.yang +++ b/integration-test/src/test/resources/data/ncmp-registry/dmi-registry@2023-11-27.yang @@ -8,6 +8,11 @@ module dmi-registry { contact "toine.siebelink@est.tech"; + revision "2023-11-27" { + description + "Added alternateId"; + } + revision "2023-08-23" { description "Added ModuleSetTag"; @@ -83,6 +88,9 @@ module dmi-registry { leaf module-set-tag { type string; } + leaf alternate-id { + type string; + } list additional-properties { key "name"; @@ -129,3 +137,4 @@ module dmi-registry { } } } + -- 2.16.6