diff options
-rwxr-xr-x | cps-service/src/test/groovy/org/onap/cps/api/impl/E2ENetworkSliceSpec.groovy | 17 | ||||
-rw-r--r-- | cps-service/src/test/resources/e2e/basic/cps-ran-inventory-data.json | 59 | ||||
-rw-r--r-- | cps-service/src/test/resources/e2e/basic/cps-ran-inventory@2021-01-28.yang (renamed from cps-service/src/test/resources/e2e/basic/cps-ran-inventory.yang) | 99 |
3 files changed, 95 insertions, 80 deletions
diff --git a/cps-service/src/test/groovy/org/onap/cps/api/impl/E2ENetworkSliceSpec.groovy b/cps-service/src/test/groovy/org/onap/cps/api/impl/E2ENetworkSliceSpec.groovy index 75c98a82d9..a24bd0af5c 100755 --- a/cps-service/src/test/groovy/org/onap/cps/api/impl/E2ENetworkSliceSpec.groovy +++ b/cps-service/src/test/groovy/org/onap/cps/api/impl/E2ENetworkSliceSpec.groovy @@ -106,7 +106,7 @@ class E2ENetworkSliceSpec extends Specification { def dataNodeStored
given: 'valid yang resource as name-to-content map'
def yangResourcesNameToContentMap = TestUtils.getYangResourcesAsMap(
- 'e2e/basic/cps-ran-inventory.yang')
+ 'e2e/basic/cps-ran-inventory@2021-01-28.yang')
def schemaContext = YangTextSchemaSourceSetBuilder.of(yangResourcesNameToContentMap).getSchemaContext()
and : 'a valid json is provided for the model'
def jsonData = TestUtils.getResourceFileContent('e2e/basic/cps-ran-inventory-data.json')
@@ -122,18 +122,23 @@ class E2ENetworkSliceSpec extends Specification { { args -> dataNodeStored = args[2]}
and: 'the size of the tree is correct'
def cpsRanInventory = TestUtils.getFlattenMapByXpath(dataNodeStored)
- assert cpsRanInventory.size() == 3
+ assert cpsRanInventory.size() == 4
and: 'ran-inventory contains the correct child node'
def ranInventory = cpsRanInventory.get('/ran-inventory')
- def sliceProfilesList = cpsRanInventory.get('/ran-inventory/sliceProfilesList[@sliceProfileId=\'f33a9dd8-ae51-4acf-8073-c9390c25f6f1\']')
- def pLMNIdList = cpsRanInventory.get('/ran-inventory/sliceProfilesList[@sliceProfileId=\'f33a9dd8-ae51-4acf-8073-c9390c25f6f1\']/pLMNIdList[@mcc=\'310\' and @mnc=\'410\']')
+ def ranSlices = cpsRanInventory.get('/ran-inventory/ran-slices[@rannfnssiid=\'14559ead-f4fe-4c1c-a94c-8015fad3ea35\']')
+ def sliceProfilesList = cpsRanInventory.get('/ran-inventory/ran-slices[@rannfnssiid=\'14559ead-f4fe-4c1c-a94c-8015fad3ea35\']/sliceProfilesList[@sliceProfileId=\'f33a9dd8-ae51-4acf-8073-c9390c25f6f1\']')
+ def pLMNIdList = cpsRanInventory.get('/ran-inventory/ran-slices[@rannfnssiid=\'14559ead-f4fe-4c1c-a94c-8015fad3ea35\']/sliceProfilesList[@sliceProfileId=\'f33a9dd8-ae51-4acf-8073-c9390c25f6f1\']/pLMNIdList[@mcc=\'310\' and @mnc=\'410\']')
ranInventory.getChildDataNodes().size() == 1
- ranInventory.getChildDataNodes().find( {it.xpath == sliceProfilesList.xpath})
+ ranInventory.getChildDataNodes().find( {it.xpath == ranSlices.xpath})
+ and: 'ranSlices contains the correct child node'
+ ranSlices.getChildDataNodes().size() == 1
+ ranSlices.getChildDataNodes().find( {it.xpath == sliceProfilesList.xpath})
and: 'sliceProfilesList contains the correct child node'
sliceProfilesList.getChildDataNodes().size() == 1
sliceProfilesList.getChildDataNodes().find( {it.xpath == pLMNIdList.xpath})
- and: 'pLMNIdList contains the no child nodes'
+ and: 'pLMNIdList contains no children'
pLMNIdList.getChildDataNodes().size() == 0
+
}
def 'E2E RAN Schema Model.'(){
diff --git a/cps-service/src/test/resources/e2e/basic/cps-ran-inventory-data.json b/cps-service/src/test/resources/e2e/basic/cps-ran-inventory-data.json index 1dbdab2ca7..fb2efb1c92 100644 --- a/cps-service/src/test/resources/e2e/basic/cps-ran-inventory-data.json +++ b/cps-service/src/test/resources/e2e/basic/cps-ran-inventory-data.json @@ -1,31 +1,34 @@ { -"ran-inventory":{ - "rannfnssiid": "14559ead-f4fe-4c1c-a94c-8015fad3ea35", - "subnetStatus": "active", - "nsstid": "2372a5dc-ee24-4a45-85f5-65103dfdc5b4", - "slicetype": "embb", - "isshareable": "Shareable", - "sliceProfilesList": [ - { - "sliceProfileId": "f33a9dd8-ae51-4acf-8073-c9390c25f6f1", - "sNSSAI": "001-11000", - "maxNumberofUEs": 300, - "latency": 5, - "uLThptPerSlice": 40, - "dLThptPerSlice": 50, - "maxNumberofConns": 500, - "uEMobilityLevel": "FULLY MOBILITY", - "coverageAreaList": [ - "Washington" - ], - "resourceSharingLevel": "Shareable", - "pLMNIdList": [ - { - "mcc": "310", - "mnc": "410" - } - ] - } - ] + "cps-ran-inventory:ran-inventory":{ + "ran-slices":[{ + "rannfnssiid": "14559ead-f4fe-4c1c-a94c-8015fad3ea35", + "subnetStatus": "active", + "nsstid": "2372a5dc-ee24-4a45-85f5-65103dfdc5b4", + "slicetype": "embb", + "isshareable": "Shareable", + "sliceProfilesList": [ + { + "sliceProfileId": "f33a9dd8-ae51-4acf-8073-c9390c25f6f1", + "sNSSAI": "001-11000", + "maxNumberofUEs": 300, + "latency": 5, + "uLThptPerSlice": 40, + "dLThptPerSlice": 50, + "maxNumberofConns": 500, + "uEMobilityLevel": "FULLY MOBILITY", + "coverageAreaList": [ + "Washington" + ], + "resourceSharingLevel": "Shareable", + "pLMNIdList": [ + { + "mcc": "310", + "mnc": "410" + } + ] + } + ] + } + ] } }
\ No newline at end of file diff --git a/cps-service/src/test/resources/e2e/basic/cps-ran-inventory.yang b/cps-service/src/test/resources/e2e/basic/cps-ran-inventory@2021-01-28.yang index 0e504cafad..c16a682512 100644 --- a/cps-service/src/test/resources/e2e/basic/cps-ran-inventory.yang +++ b/cps-service/src/test/resources/e2e/basic/cps-ran-inventory@2021-01-28.yang @@ -57,46 +57,46 @@ module cps-ran-inventory { } grouping SliceProfile{ - leaf sliceProfileId{ - type string; - mandatory true; - description "slice profile id"; - } - leaf sNSSAI{ - type string; - mandatory false; - description "The S-NSSAI may include both the SST and SD fields (in which case the S-NSSAI length is 32 bits in total), or the S-NSSAI may just include the SST field (in which case the S-NSSAI length is 8 bits only)"; - } - leaf maxNumberofUEs{ - type int64 { range "0..68719476735"; } - mandatory false; - description "maximum number of UEs"; - } - leaf latency{ - type int64 { range "0..68719476735"; } - mandatory false; - description "latency of the slice requested by the operator"; - } - leaf uLThptPerSlice{ - type int64 { range "0..68719476735"; } - mandatory false; - description "uplink throughput of the slice requested by the operator"; - } - leaf dLThptPerSlice{ - type int64 { range "0..68719476735"; } - mandatory false; - description "downlink throughput of the slice requested by the operator"; - } - leaf maxNumberofConns{ - type int64 { range "0..68719476735"; } - mandatory false; - description "maximum number of connections to be served by the slice"; - } - leaf uEMobilityLevel{ - type string; - mandatory false; - description "Mobility level of the UE"; - } + leaf sliceProfileId{ + type string; + mandatory true; + description "slice profile id"; + } + leaf sNSSAI{ + type string; + mandatory false; + description "The S-NSSAI may include both the SST and SD fields (in which case the S-NSSAI length is 32 bits in total), or the S-NSSAI may just include the SST field (in which case the S-NSSAI length is 8 bits only)"; + } + leaf maxNumberofUEs{ + type int64 { range "0..68719476735"; } + mandatory false; + description "maximum number of UEs"; + } + leaf latency{ + type int64 { range "0..68719476735"; } + mandatory false; + description "latency of the slice requested by the operator"; + } + leaf uLThptPerSlice{ + type int64 { range "0..68719476735"; } + mandatory false; + description "uplink throughput of the slice requested by the operator"; + } + leaf dLThptPerSlice{ + type int64 { range "0..68719476735"; } + mandatory false; + description "downlink throughput of the slice requested by the operator"; + } + leaf maxNumberofConns{ + type int64 { range "0..68719476735"; } + mandatory false; + description "maximum number of connections to be served by the slice"; + } + leaf uEMobilityLevel{ + type string; + mandatory false; + description "Mobility level of the UE"; + } leaf resourceSharingLevel{ type string; description "Resource sharing level"; @@ -117,7 +117,7 @@ module cps-ran-inventory { uses PLMNId; } - } + } grouping PLMNId { description @@ -141,17 +141,17 @@ module cps-ran-inventory { } } - container ran-inventory{ + grouping ran-slices{ leaf rannfnssiid{ description "NSSI of a RAN network function"; type string; } list sliceProfilesList{ - uses SliceProfile; - key "sliceProfileId"; - description "List of slice profiles supported by the ran slice"; - } + uses SliceProfile; + key "sliceProfileId"; + description "List of slice profiles supported by the ran slice"; + } leaf subnetStatus{ description "status of RAN NF NSSI"; @@ -173,4 +173,11 @@ module cps-ran-inventory { type string; } } + container ran-inventory{ + list ran-slices{ + uses ran-slices; + key "rannfnssiid"; + description "List of RAN Slices"; + } + } } |