aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plans/dcaegen2-services-son-handler/testsuites/config/sonhms/config_all.json8
-rw-r--r--plans/dcaegen2-services-son-handler/testsuites/setup.sh7
-rw-r--r--plans/dcaegen2-services-son-handler/testsuites/teardown.sh2
-rw-r--r--plans/dcaegen2-services-son-handler/testsuites/testplan.txt4
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/configdb-oof-sim.py2
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/Dockerfile15
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/configdb-oof-sim.py98
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/application.yml52
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-ran-updated.zipbin0 -> 18537 bytes
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-setup.sh87
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/docker-compose.yaml86
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/ran-network.zipbin0 -> 21479 bytes
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/settings.xml174
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-cps-ran.json1005
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-ran-network.json1633
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_data.json13
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_list.json60
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-cell-details.json1
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-neighbour-list.json2
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pci-list.json1
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pnf-name.json2
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_configdb.json14
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_response.json17
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_syn_response.json6
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/pci_value.json4
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-cell-details.json1
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-neighbour-list.json2
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pci-list.json1
-rw-r--r--scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pnf-name.json2
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_fm.json2
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_pm.json1
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/data/cps_fault_notification.json35
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/data/fault_notification.json7
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/data/performance_notification.json4
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/son-handler-test-cps.robot102
-rw-r--r--tests/dcaegen2-services-son-handler/testcases/sonhandler-test.robot2
36 files changed, 3443 insertions, 9 deletions
diff --git a/plans/dcaegen2-services-son-handler/testsuites/config/sonhms/config_all.json b/plans/dcaegen2-services-son-handler/testsuites/config/sonhms/config_all.json
index 8372142d..465dfe2d 100644
--- a/plans/dcaegen2-services-son-handler/testsuites/config/sonhms/config_all.json
+++ b/plans/dcaegen2-services-son-handler/testsuites/config/sonhms/config_all.json
@@ -83,6 +83,14 @@
"sonhandler.cg": "sonhms-cg",
"sonhandler.pollingInterval": 20,
"sonhandler.badThreshold": 50,
+ "cps.username": "cps",
+ "cps.password": "cpsr0cks!",
+ "sonhandler.clientType": "cps",
+ "cps.service.url": "http://cps-tbdmt:8080",
+ "cps.get.celldata": "execute/cps-ran-schemaset/get-cell-data",
+ "cps.get.nbr.list.url":"execute/cps-ran-schemaset/get-nbr-list",
+ "cps.get.pci.url": "execute/ran-network-schemaset/get-pci",
+ "cps.get.pnf.url": "execute/ran-network-schemaset/get-pnf",
"sonhandler.bufferTime": 60,
"sonhandler.cid": "sonhms-cid",
"sonhandler.configDb.service": "http://configdb_oof_sim:5000",
diff --git a/plans/dcaegen2-services-son-handler/testsuites/setup.sh b/plans/dcaegen2-services-son-handler/testsuites/setup.sh
index 6f895a1e..76fefb85 100644
--- a/plans/dcaegen2-services-son-handler/testsuites/setup.sh
+++ b/plans/dcaegen2-services-son-handler/testsuites/setup.sh
@@ -3,8 +3,9 @@
docker login -u docker -p docker nexus3.onap.org:10001
TEST_PLANS_DIR=$WORKSPACE/plans/dcaegen2-services-son-handler/testsuites
-TEST_SCRIPTS_DIR=$WORKSPACE/scripts/dcaegen2-services-son-handler/sonhandler
+TEST_SCRIPTS_DIR=$WORKSPACE/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler
TEST_ROBOT_DIR=$WORKSPACE/tests/dcaegen2-services-son-handler/testcases
+TEST_SCRIPTS_CPS_DIR=$WORKSPACE/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps
docker-compose up -d
@@ -57,5 +58,9 @@ sleep 60
CONFIGDB_OOF_SIM_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' configdb_oof_sim)
echo "CONFIGDB_OOF_SIM_IP=${CONFIGDB_OOF_SIM_IP}"
+# CPS set up
+cd $TEST_SCRIPTS_CPS_DIR
+sh cps-setup.sh
+
ROBOT_VARIABLES="-v ZOOKEEPER_IP:${ZOOKEEPER_IP} -v KAFKA_IP:${KAFKA_IP} -v DMAAP_IP:${DMAAP_IP} -v SONHMS_POSTGRES_IP:${SONHMS_POSTGRES_IP} -v SONHMS_IP:${SONHMS_IP} -v CONFIGDB_OOF_SIM_IP:${CONFIGDB_OOF_SIM_IP} -v TEST_ROBOT_DIR:${TEST_ROBOT_DIR}"
diff --git a/plans/dcaegen2-services-son-handler/testsuites/teardown.sh b/plans/dcaegen2-services-son-handler/testsuites/teardown.sh
index 7db3d2f6..14019ef0 100644
--- a/plans/dcaegen2-services-son-handler/testsuites/teardown.sh
+++ b/plans/dcaegen2-services-son-handler/testsuites/teardown.sh
@@ -1,9 +1,11 @@
#!/bin/bash
echo "Starting teardown script"
TEST_PLANS_DIR=$WORKSPACE/plans/dcaegen2-services-son-handler/testsuites
+TEST_SCRIPTS_CPS_DIR=$WORKSPACE/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps
mkdir -p $WORKSPACE/archives
docker container stop configdb_oof_sim
docker container rm configdb_oof_sim
docker-compose -f $TEST_PLANS_DIR/docker-compose.yaml logs > $WORKSPACE/archives/sonhandler-docker-compose.log
docker-compose -f $TEST_PLANS_DIR/docker-compose.yaml down -v
+docker-compose -f $TEST_SCRIPTS_CPS_DIR/docker-compose.yaml down -v
diff --git a/plans/dcaegen2-services-son-handler/testsuites/testplan.txt b/plans/dcaegen2-services-son-handler/testsuites/testplan.txt
index 2f8b7606..54e1c1f3 100644
--- a/plans/dcaegen2-services-son-handler/testsuites/testplan.txt
+++ b/plans/dcaegen2-services-son-handler/testsuites/testplan.txt
@@ -1,3 +1,5 @@
# Test suites are relative paths under [integration/csit.git]/tests/.
# Place the suites in run order.
-dcaegen2-services-son-handler/testcases
+# dcaegen2-services-son-handler/testcases
+# dcaegen2-services-son-handler/testcases/sonhandler-test.robot
+dcaegen2-services-son-handler/testcases/son-handler-test-cps.robot
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/configdb-oof-sim.py b/scripts/dcaegen2-services-son-handler/sonhandler/configdb-oof-sim.py
index 7a51c951..b9877165 100644
--- a/scripts/dcaegen2-services-son-handler/sonhandler/configdb-oof-sim.py
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/configdb-oof-sim.py
@@ -8,7 +8,6 @@ import time
app = flask.Flask(__name__)
app.config["DEBUG"] = True
-
def get_neighbour_cell_list_for_cell_id():
with open('cell_list.json') as cell_list:
data = json.load(cell_list)
@@ -96,3 +95,4 @@ def oof_optimizatio_result():
app.run(host='0.0.0.0')
+app.run(debug=True)
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/Dockerfile b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/Dockerfile
new file mode 100644
index 00000000..688a2fe0
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/Dockerfile
@@ -0,0 +1,15 @@
+FROM python:alpine3.7
+
+ADD configdb-oof-sim.py /
+
+ADD ./sim-data /
+
+RUN pip install Flask
+
+RUN pip install requests
+
+EXPOSE 5000
+
+CMD ["flask", "run", "--host", "0.0.0.0"]
+
+CMD [ "python", "./configdb-oof-sim.py" ]
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/configdb-oof-sim.py b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/configdb-oof-sim.py
new file mode 100644
index 00000000..b9877165
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/configdb-oof-sim.py
@@ -0,0 +1,98 @@
+import flask
+import json
+from flask import request
+import requests
+import threading
+import time
+
+app = flask.Flask(__name__)
+app.config["DEBUG"] = True
+
+def get_neighbour_cell_list_for_cell_id():
+ with open('cell_list.json') as cell_list:
+ data = json.load(cell_list)
+ if not data:
+ return {"Error": "Unable to read file"}, 503
+ return data, None
+
+def get_pci_for_cell_id():
+ with open('pci_value.json') as pci_value:
+ data = json.load(pci_value)
+ if not data:
+ return {"Error": "Unable to read file"}, 503
+ return data, None
+
+def get_cell_data_for_cell_id():
+ with open('cell_data.json') as cell_data:
+ data = json.load(cell_data)
+ if not data:
+ return {"Error": "Unable to read file"}, 503
+ return data, None
+
+def get_oof_sync_response():
+ with open('oof_syn_response.json') as syncRes:
+ data = json.load(syncRes)
+ if not data:
+ return {"Error": "Unale to read file"}, 503
+ return data, None
+
+def get_oof_async_response(callback_url, transaction_id):
+ time.sleep(10)
+ with open('oof_async_response.json') as asyncRes:
+ data = json.load(asyncRes)
+ data['transactionId'] = transaction_id
+ if not data:
+ return {"Error": "Unable to read file"}, 503
+ res = requests.post(callback_url, json=data)
+ print('response from server:',res.text)
+ return res
+
+@app.route("/api/sdnc-config-db/v3/getNbrList/<cell_id>/<ts>", methods=["GET"])
+def get_neighbour_list(cell_id, ts):
+ data, status = get_neighbour_cell_list_for_cell_id()
+ if not status:
+ return data
+ return data, 503
+
+@app.route("/api/sdnc-config-db/v3/getPCI/<cell_id>/<ts>", methods=["GET"])
+def get_pci(cell_id, ts):
+ data, status = get_pci_for_cell_id()
+ if not status:
+ return data
+ return data, 503
+@app.route("/api/sdnc-config-db/v3/getPnfId/<cell_id>/<ts>", methods=["GET"])
+def get_pnf_id(cell_id, ts):
+ data, status = get_pci_for_cell_id()
+ data['value'] = 'ncserver5'
+ if not status:
+ return data
+ return data, 503
+
+@app.route("/api/sdnc-config-db/v3/getCell/<cell_id>", methods=["GET"])
+def get_cell_data(cell_id):
+ data, status = get_cell_data_for_cell_id()
+ if not status:
+ return data
+ return data, 503
+
+@app.route("/api/oof/v1/pci",methods=["POST"])
+def oof_optimizatio_result():
+ content = request.get_json()
+ callback_url = content['requestInfo']['callbackUrl']
+ transaction_id = content['requestInfo']['transactionId']
+ try:
+ task = threading.Thread(target=get_oof_async_response, args=(callback_url,transaction_id,))
+ task.daemon = True
+ task.start()
+ except:
+ print("Error: Unable to start thread")
+
+ data, status = get_oof_sync_response()
+
+ if not status:
+ return data, 202
+ return data, 503
+
+
+app.run(host='0.0.0.0')
+app.run(debug=True)
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/application.yml b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/application.yml
new file mode 100644
index 00000000..ec02d414
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/application.yml
@@ -0,0 +1,52 @@
+###############################################################################
+## ============LICENSE_START=======================================================
+## ONAP
+## ================================================================================
+## Copyright (C) 2022 Wipro Limited.
+## ==============================================================================
+## 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.
+## ============LICENSE_END=========================================================
+##
+################################################################################
+
+spring:
+ datasource:
+ initialization-mode: always
+ initialize: true
+ url: jdbc:postgresql://postgres:5432/cps_template_db
+ username: postgres
+ password: postgres
+ continue-on-error: true
+ jpa:
+ hibernate:
+ ddl-auto: update
+ properties:
+ hibernate:
+ temp:
+ use_jdbc_metadata_defaults: false
+ database-platform: org.hibernate.dialect.PostgreSQLDialect
+app:
+ cpsCoreConfiguration:
+ url: http://cps-and-ncmp:8080/cps/api/v1/dataspaces/sondataspace
+ username: cpsuser
+ password: cpsr0cks!
+ ncmpConfiguration:
+ url: http://cps-and-ncmp:8080/cps/api/v1
+ username: cpsuser
+ password: cpsr0cks!
+ cpsClient: cpsCore
+ schemaToAnchor:
+ ran-coverage-area: coverage-area-onap
+ e2e-cavsta-schemaset: e2e-cavsta1
+ cps-ran-schemaset: cps-ran-anchor
+ ran-network-schemaset: ran-network-anchor
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-ran-updated.zip b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-ran-updated.zip
new file mode 100644
index 00000000..c3e7924b
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-ran-updated.zip
Binary files differ
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-setup.sh b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-setup.sh
new file mode 100644
index 00000000..4a969f3f
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/cps-setup.sh
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+#Building cps-tbdmt image
+git clone "https://gerrit.onap.org/r/cps/cps-tbdmt"
+mvn -f cps-tbdmt/ -Dmaven.test.skip clean install --settings settings.xml
+sudo rm -r cps-tbdmt/
+
+#Creating containers for cps and cps-tbdmt
+docker-compose up -d
+
+sleep 80
+
+# Uploading data to cps & cps-tbdmt
+CPS_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' cps-and-ncmp )
+echo $CPS_IP
+CPS_TBDMT_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' cps-tbdmt )
+echo $CPS_TBDMT_IP
+
+echo "Creating dataspace: "
+curl --location --user cpsuser:cpsr0cks! -H "Accept: application/json" -H "Content-Type: application/json" \
+ --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces?dataspace-name=sondataspace
+sleep 5
+
+echo "\nCreating schema sets: "
+curl --location --user cpsuser:cpsr0cks! \
+ --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces/sondataspace/schema-sets --form 'file=@"ran-network.zip"' --form 'schema-set-name="ran-network-schemaset"'
+
+curl --location --user cpsuser:cpsr0cks! \
+ --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces/sondataspace/schema-sets --form 'file=@"cps-ran-updated.zip"' --form 'schema-set-name="cps-ran-schemaset"'
+sleep 5
+
+echo "\nCreating anchor: "
+curl --location --user cpsuser:cpsr0cks! --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces/sondataspace/anchors?schema-set-name=ran-network-schemaset \
+ -d anchor-name=ran-network-anchor
+
+curl --location --user cpsuser:cpsr0cks! --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces/sondataspace/anchors?schema-set-name=cps-ran-schemaset \
+ -d anchor-name=cps-ran-anchor
+sleep 5
+
+echo "\nUploading cps payload "
+curl --location --user cpsuser:cpsr0cks! --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces/sondataspace/anchors/ran-network-anchor/nodes \
+ --header 'Content-Type: application/json' \
+ -d @sim-data/payload-ran-network.json
+sleep 5
+
+curl --location --user cpsuser:cpsr0cks! --request POST \
+ http://$CPS_IP:8080/cps/api/v1/dataspaces/sondataspace/anchors/cps-ran-anchor/nodes \
+ --header 'Content-Type: application/json' \
+ -d @sim-data/payload-cps-ran.json
+sleep 5
+
+echo "\nUploading tbdmt-templates"
+
+curl --location --request POST \
+http://$CPS_TBDMT_IP:8080/templates \
+ --header 'Content-Type: application/json' \
+ --data-raw '{"templateId": "get-cell","model": "cps-ran-schemaset","requestType": "query-cps-path","xpathTemplate": "//NRCellCU[@idNRCellCU='\''{{cellId}}'\'']//ancestor::Regions","includeDescendants": true, "transformParam":"Regions"}'
+
+sleep 3
+
+curl --location --request POST \
+http://$CPS_TBDMT_IP:8080/templates \
+ --header 'Content-Type: application/json' \
+ --data-raw '{"templateId": "get-pnf","model": "ran-network-schemaset","requestType": "query-cps-path","xpathTemplate": "//NRCellDU[@idNRCellDU='\''{{cellId}}'\'']/ancestor::GNBDUFunction","includeDescendants": true,"transformParam":"ietf-inet-types:GNBDUFunction"}'
+
+sleep 3
+
+curl --location --request POST \
+http://$CPS_TBDMT_IP:8080/templates \
+ --header 'Content-Type: application/json' \
+ --data-raw '{"templateId": "get-pci","model": "ran-network-schemaset","requestType": "query-cps-path","xpathTemplate": "//NRCellDU[@idNRCellDU='\''{{cellId}}'\'']","includeDescendants": true,"transformParam":"ietf-inet-types:NRCellDU,attributes"}'
+
+sleep 3
+
+curl --location --request POST \
+http://$CPS_TBDMT_IP:8080/templates \
+ --header 'Content-Type: application/json' \
+ --data-raw '{"templateId": "get-nbr-list","model": "cps-ran-schemaset","requestType": "get","xpathTemplate": "/cps-ran-schema/Regions[@regionId='\''{{10000000}}'\'']/cps-region-cell-mapping/NRCellCU[@idNRCellCU='\''{{cellId}}'\'']","includeDescendants": true, "transformParam":"cps-ran-schema-model:NRCellCU"}'
+
+sleep 3
+
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/docker-compose.yaml b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/docker-compose.yaml
new file mode 100644
index 00000000..0516b6df
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/docker-compose.yaml
@@ -0,0 +1,86 @@
+# ============LICENSE_START=======================================================
+# cps-tdmt
+# ================================================================================
+# Copyright (C) 2022 Wipro Limited.
+# ==============================================================================
+# 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.
+# ============LICENSE_END=========================================================
+
+
+version: "3.3"
+networks:
+ testsuites_sonhms-default:
+ external: TRUE
+services:
+ cps-and-ncmp:
+ container_name: cps-and-ncmp
+ hostname: cps-and-ncmp
+ image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${VERSION:-latest}
+ ports:
+ - "8883:8080"
+ - "8887:8081"
+ networks:
+ - testsuites_sonhms-default
+ environment:
+ CPS_USERNAME: ${CPS_USERNAME:-cpsuser}
+ CPS_PASSWORD: ${CPS_PASSWORD:-cpsr0cks!}
+ DB_HOST: dbpostgresql
+ DB_USERNAME: ${DB_USERNAME:-cps}
+ DB_PASSWORD: ${DB_PASSWORD:-cps}
+ DMI_USERNAME: ${DMI_USERNAME:-cpsuser}
+ DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
+ restart: unless-stopped
+ depends_on:
+ - dbpostgresql
+
+ dbpostgresql:
+ container_name: dbpostgresql
+ image: postgres:13.2-alpine
+ ports:
+ - '5432:5432'
+ networks:
+ - testsuites_sonhms-default
+ environment:
+ POSTGRES_DB: cpsdb
+ POSTGRES_USER: ${DB_USERNAME:-cps}
+ POSTGRES_PASSWORD: ${DB_PASSWORD:-cps}
+ postgres:
+ image: 'postgres:12.4-alpine'
+ container_name: cps-tbdmt-postgres
+ hostname: postgres
+ environment:
+ - POSTGRES_USER=postgres
+ - POSTGRES_PASSWORD=postgres
+ - POSTGRES_DB=cps_template_db
+ ports:
+ - 5432
+ healthcheck:
+ test: ["CMD", "nc", "-z", "localhost", "5432"]
+ interval: 30s
+ timeout: 10s
+ retries: 5
+ networks:
+ - testsuites_sonhms-default
+ cps-tbdmt:
+ image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-tbdmt:${VERSION:-latest}
+ container_name: cps-tbdmt
+ hostname: cps-tbdmt
+ ports:
+ - "8088:8080"
+ volumes:
+ - "./application.yml:/app/resources/application.yml"
+ depends_on:
+ - postgres
+ restart: on-failure:10
+ networks:
+ - testsuites_sonhms-default
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/ran-network.zip b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/ran-network.zip
new file mode 100644
index 00000000..080477de
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/ran-network.zip
Binary files differ
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/settings.xml b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/settings.xml
new file mode 100644
index 00000000..91918329
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/settings.xml
@@ -0,0 +1,174 @@
+
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2016-2018 Huawei Technologies Co., Ltd. and others. All rights reserved.
+ 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.
+-->
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
+
+<localRepository>${user.home}/.m2/repository</localRepository>
+ <profiles>
+ <profile>
+ <id>onap-settings</id>
+ <properties>
+ <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
+ <onap.nexus.rawrepo.baseurl.upload>https://nexus.onap.org/content/sites/raw</onap.nexus.rawrepo.baseurl.upload>
+ <onap.nexus.rawrepo.baseurl.download>https://nexus.onap.org/service/local/repositories/raw/content</onap.nexus.rawrepo.baseurl.download>
+ <onap.nexus.rawrepo.serverid>ecomp-raw</onap.nexus.rawrepo.serverid>
+
+ <!-- properties for Nexus Docker registry -->
+ <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
+ <onap.nexus.dockerregistry.release>nexus3.onap.org:10002</onap.nexus.dockerregistry.release>
+ <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
+ <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
+ </properties>
+ </profile>
+ <profile>
+ <id>onap-snapshots</id>
+ <repositories>
+ <repository>
+ <id>onap-snapshots</id>
+ <name>onap-snapshots</name>
+ <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>onap-snapshots</id>
+ <name>onap-snapshots</name>
+ <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ <profile>
+ <id>onap-releases</id>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ <profile>
+ <id>onap-public</id>
+ <repositories>
+ <repository>
+ <id>central</id>
+ <url>https://repo1.maven.org/maven2/</url>
+ </repository>
+ <repository>
+ <id>onap-public</id>
+ <name>onap-public</name>
+ <url>https://nexus.onap.org/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+
+ <snapshots>
+
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>central</id>
+ <url>https://repo1.maven.org/maven2/</url>
+ </pluginRepository>
+ <pluginRepository>
+
+ <id>onap-public</id>
+ <name>onap-public</name>
+ <url>https://nexus.onap.org/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ <profile>
+ <!-- Configure this profile if you have a local nexus cache -->
+ <id>local-public</id>
+ <repositories>
+ <repository>
+ <id>local-public</id>
+ <name>local-public</name>
+ <url>http://nexus-proxy:8081/nexus/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>local-public</id>
+ <name>local-public</name>
+ <url>http://nexus-proxy:8081/nexus/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ </profiles>
+
+ <activeProfiles>
+ <activeProfile>onap-settings</activeProfile>
+ <activeProfile>onap-snapshots</activeProfile>
+ <activeProfile>onap-releases</activeProfile>
+ <activeProfile>onap-public</activeProfile>
+ <!-- <activeProfile>local-public</activeProfile> -->
+ </activeProfiles>
+</settings>
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-cps-ran.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-cps-ran.json
new file mode 100644
index 00000000..b8d3a3e2
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-cps-ran.json
@@ -0,0 +1,1005 @@
+{
+ "cps-ran-schema-model:cps-ran-schema": {
+ "Regions": [{
+ "regionId": "10000000",
+ "cps-region-cell-mapping": {
+
+ "NRCellCU": [{
+ "idNRCellCU": "15289",
+ "attributes": {
+ "cellLocalId": 15289
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15290",
+ "attributes": {
+ "nRTCI": "15290",
+ "nRPCI": 1,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "nRPCI": 2,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15687",
+ "attributes": {
+ "nRTCI": "15687",
+ "nRPCI": 3,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15290",
+ "attributes": {
+ "cellLocalId": 15290
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15687",
+ "attributes": {
+ "nRTCI": "15687",
+ "nRPCI": 3,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15289",
+ "attributes": {
+ "nRTCI": "15289",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "nRPCI": 2,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15296",
+ "attributes": {
+ "cellLocalId": 15296
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15290",
+ "attributes": {
+ "nRTCI": "15290",
+ "nRPCI": 1,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15289",
+ "attributes": {
+ "nRTCI": "15289",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15687",
+ "attributes": {
+ "nRTCI": "15687",
+ "nRPCI": 3,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15687",
+ "attributes": {
+ "cellLocalId": 15687
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15289",
+ "attributes": {
+ "nRTCI": "15289",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15290",
+ "attributes": {
+ "nRTCI": "15290",
+ "nRPCI": 1,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "nRPCI": 2,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15689",
+ "attributes": {
+ "cellLocalId": 15689
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "nRPCI": 4,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "nRPCI": 5,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "nRPCI": 6,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15155",
+ "attributes": {
+ "cellLocalId": 15155
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "nRPCI": 7,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "nRPCI": 8,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "nRPCI": 9,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15174",
+ "attributes": {
+ "cellLocalId": 15174
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "nRPCI": 9,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "nRPCI": 7,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "nRPCI": 10,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15175",
+ "attributes": {
+ "cellLocalId": 15175
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "nRPCI": 8,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "nRPCI": 7,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "nRPCI": 10,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15176",
+ "attributes": {
+ "cellLocalId": 15176
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "nRPCI": 10,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "nRPCI": 8,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "nRPCI": 9,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15825",
+ "attributes": {
+ "cellLocalId": 15825
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "nRPCI": 5,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "nRPCI": 11,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "nRPCI": 6,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15826",
+ "attributes": {
+ "cellLocalId": 15826
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "nRPCI": 11,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "nRPCI": 6,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "nRPCI": 4,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15425",
+ "attributes": {
+ "cellLocalId": 15425
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15426",
+ "attributes": {
+ "nRTCI": "15426",
+ "nRPCI": 12,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14000",
+ "attributes": {
+ "nRTCI": "14000",
+ "nRPCI": 13,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15426",
+ "attributes": {
+ "cellLocalId": 15426
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "nRPCI": 14,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14000",
+ "attributes": {
+ "nRTCI": "14000",
+ "nRPCI": 13,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "13999",
+ "attributes": {
+ "cellLocalId": 13999
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "nRPCI": 4,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "nRPCI": 5,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "nRPCI": 11,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14000",
+ "attributes": {
+ "cellLocalId": 14000
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "nRPCI": 14,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15426",
+ "attributes": {
+ "nRTCI": "15426",
+ "nRPCI": 12,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11561",
+ "attributes": {
+ "cellLocalId": 11561
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11562",
+ "attributes": {
+ "nRTCI": "11562",
+ "nRPCI": 16,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11568",
+ "attributes": {
+ "nRTCI": "11568",
+ "nRPCI": 17,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11569",
+ "attributes": {
+ "nRTCI": "11569",
+ "nRPCI": 18,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11562",
+ "attributes": {
+ "cellLocalId": 11562
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11568",
+ "attributes": {
+ "nRTCI": "11568",
+ "nRPCI": 17,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11569",
+ "attributes": {
+ "nRTCI": "11569",
+ "nRPCI": 18,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11561",
+ "attributes": {
+ "nRTCI": "11561",
+ "nRPCI": 15,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11568",
+ "attributes": {
+ "cellLocalId": 11568
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11569",
+ "attributes": {
+ "nRTCI": "11569",
+ "nRPCI": 18,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11562",
+ "attributes": {
+ "nRTCI": "11562",
+ "nRPCI": 16,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11561",
+ "attributes": {
+ "nRTCI": "11561",
+ "nRPCI": 15,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11569",
+ "attributes": {
+ "cellLocalId": 11569
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11568",
+ "attributes": {
+ "nRTCI": "11568",
+ "nRPCI": 17,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11562",
+ "attributes": {
+ "nRTCI": "11562",
+ "nRPCI": 16,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11561",
+ "attributes": {
+ "nRTCI": "11561",
+ "nRPCI": 15,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "10896",
+ "attributes": {
+ "cellLocalId": 10896
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14655",
+ "attributes": {
+ "nRTCI": "14655",
+ "nRPCI": 19,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14656",
+ "attributes": {
+ "nRTCI": "14656",
+ "nRPCI": 20,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10897",
+ "attributes": {
+ "nRTCI": "10897",
+ "nRPCI": 21,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "10897",
+ "attributes": {
+ "cellLocalId": 10897
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "10896",
+ "attributes": {
+ "nRTCI": "10896",
+ "nRPCI": 22,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14656",
+ "attributes": {
+ "nRTCI": "14656",
+ "nRPCI": 20,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14655",
+ "attributes": {
+ "nRTCI": "14655",
+ "nRPCI": 19,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14655",
+ "attributes": {
+ "cellLocalId": 14655
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14656",
+ "attributes": {
+ "nRTCI": "14656",
+ "nRPCI": 20,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10896",
+ "attributes": {
+ "nRTCI": "10896",
+ "nRPCI": 22,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10897",
+ "attributes": {
+ "nRTCI": "10897",
+ "nRPCI": 21,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14656",
+ "attributes": {
+ "cellLocalId": 14656
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14655",
+ "attributes": {
+ "nRTCI": "14655",
+ "nRPCI": 19,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10896",
+ "attributes": {
+ "nRTCI": "10896",
+ "nRPCI": 22,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10897",
+ "attributes": {
+ "nRTCI": "10897",
+ "nRPCI": 21,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "13905",
+ "attributes": {
+ "cellLocalId": 13905
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "13910",
+ "attributes": {
+ "nRTCI": "13910",
+ "nRPCI": 23,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "nRPCI": 24,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "nRPCI": 25,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "13910",
+ "attributes": {
+ "cellLocalId": 13910
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "nRPCI": 24,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "nRPCI": 25,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "nRPCI": 26,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15360",
+ "attributes": {
+ "cellLocalId": 15360
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "nRPCI": 26,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13910",
+ "attributes": {
+ "nRTCI": "13910",
+ "nRPCI": 23,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "nRPCI": 25,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15361",
+ "attributes": {
+ "cellLocalId": 15361
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "nRPCI": 24,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13910",
+ "attributes": {
+ "nRTCI": "13910",
+ "nRPCI": 23,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "nRPCI": 26,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15548",
+ "attributes": {
+ "cellLocalId": 15548
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15549",
+ "attributes": {
+ "nRTCI": "15549",
+ "nRPCI": 27,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14427",
+ "attributes": {
+ "nRTCI": "14427",
+ "nRPCI": 28,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15549",
+ "attributes": {
+ "cellLocalId": 15549
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14427",
+ "attributes": {
+ "nRTCI": "14427",
+ "nRPCI": 28,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15548",
+ "attributes": {
+ "nRTCI": "15548",
+ "nRPCI": 29,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14427",
+ "attributes": {
+ "cellLocalId": 14427
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15549",
+ "attributes": {
+ "nRTCI": "15549",
+ "nRPCI": 27,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15548",
+ "attributes": {
+ "nRTCI": "15548",
+ "nRPCI": 29,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "nRPCI": 14,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "nRPCI": 2,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ }
+ ]
+
+ }
+ },
+ {
+ "regionId": "netw2000",
+ "cps-region-cell-mapping": {
+ "NRCellCU": [{
+ "idNRCellCU": "15155",
+ "attributes": {
+ "cellLocalId": "15155"
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "nRPCI": 1,
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "nRPCI": 2,
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15174",
+ "attributes": {
+ "cellLocalId": "15174"
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ }]
+ },
+ {
+ "idNRCellCU": "15175",
+ "attributes": {
+ "cellLocalId": "15175"
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ }]
+ },
+ {
+ "idNRCellCU": "15176",
+ "attributes": {
+ "cellLocalId": "15176"
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "nRPCI": 0,
+ "isHOAllowed": true
+ }
+ }]
+ },
+ {
+ "idNRCellCU": "15825",
+ "attributes": {
+ "cellLocalId": "15825"
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "nRPCI": 2,
+ "isHOAllowed": true
+ }
+ }]
+ }
+ ]
+ }
+ }
+ ],
+ "NearRTRIC": []
+ }
+}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-ran-network.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-ran-network.json
new file mode 100644
index 00000000..6b791433
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/cps/sim-data/payload-ran-network.json
@@ -0,0 +1,1633 @@
+{
+ "ran-network:ran-network": {
+ "NearRTRIC": [{
+ "idNearRTRIC": "11",
+ "GNBCUUPFunction": [{
+ "idGNBCUUPFunction": "1111",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBId": 25
+ }
+ }],
+ "GNBCUCPFunction": [{
+ "idGNBCUCPFunction": "cucpserver1",
+ "attributes": {
+ "gNBCUName": "cucpserver1",
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBIdLength": 25,
+ "gNBId": 25
+ },
+ "NRCellCU": [{
+ "idNRCellCU": "15289",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15289
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15290",
+ "attributes": {
+ "nRTCI": "15290",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15687",
+ "attributes": {
+ "nRTCI": "15687",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15290",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15290
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15687",
+ "attributes": {
+ "nRTCI": "15687",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15289",
+ "attributes": {
+ "nRTCI": "15",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15296",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15296
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15290",
+ "attributes": {
+ "nRTCI": "15290",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15289",
+ "attributes": {
+ "nRTCI": "15289",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15687",
+ "attributes": {
+ "nRTCI": "15687",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15687",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15687
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15289",
+ "attributes": {
+ "nRTCI": "15289",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15290",
+ "attributes": {
+ "nRTCI": "15290",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15689",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15689
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15155",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15155
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15174",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15174
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15175",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15175
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15176",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15176
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15825",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15825
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15826",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15826
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15425",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15425
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15426",
+ "attributes": {
+ "nRTCI": "15426",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14000",
+ "attributes": {
+ "nRTCI": "14000",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15426",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15426
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14000",
+ "attributes": {
+ "nRTCI": "14000",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "13999",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 13999
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15826",
+ "attributes": {
+ "nRTCI": "15826",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15689",
+ "attributes": {
+ "nRTCI": "15689",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14000",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 14000
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15426",
+ "attributes": {
+ "nRTCI": "15426",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ }
+ ]
+ }],
+ "GNBDUFunction": [{
+ "idGNBDUFunction": "110",
+ "attributes": {
+ "gNBDUId": 110,
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBDUName": "gnduserver1",
+ "gNBIdLength": 25
+ },
+ "NRCellDU": [{
+ "idNRCellDU": "15296",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15296,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 2,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15689",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15689,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 11,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15687",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15687,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 3,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15289",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15289,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 0,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15290",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15290,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 1,
+ "nRTAC": 310
+ }
+ }
+ ]
+ },
+ {
+ "idGNBDUFunction": "330",
+ "attributes": {
+ "gNBDUId": 330,
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBDUName": "gnduserver3",
+ "gNBIdLength": 25
+ },
+ "NRCellDU": [{
+ "idNRCellDU": "15425",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15425,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 14,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15826",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15826,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 5,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "13999",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 13999,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 6,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15426",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15426,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 12,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "14000",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 14000,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 13,
+ "nRTAC": 310
+ }
+ }
+ ]
+ },
+ {
+ "idGNBDUFunction": "220",
+ "attributes": {
+ "gNBDUId": 220,
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBDUName": "gnduserver2",
+ "gNBIdLength": 25
+ },
+ "NRCellDU": [{
+ "idNRCellDU": "15174",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15174,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 8,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15175",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15175,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 9,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15825",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15825,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 4,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15176",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15176,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 7,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15155",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15155,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 10,
+ "nRTAC": 310
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "idNearRTRIC": "22",
+ "GNBCUUPFunction": [{
+ "idGNBCUUPFunction": "2222",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBId": 25
+ }
+ }],
+ "GNBCUCPFunction": [{
+ "idGNBCUCPFunction": "cucpserver2",
+ "attributes": {
+ "gNBCUName": "cucpserver2",
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBIdLength": 25,
+ "gNBId": 25
+ },
+ "NRCellCU": [{
+ "idNRCellCU": "11561",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 11561
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11562",
+ "attributes": {
+ "nRTCI": "11562",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11568",
+ "attributes": {
+ "nRTCI": "11568",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11569",
+ "attributes": {
+ "nRTCI": "11569",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11562",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 11562
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11568",
+ "attributes": {
+ "nRTCI": "11568",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11569",
+ "attributes": {
+ "nRTCI": "11569",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11561",
+ "attributes": {
+ "nRTCI": "11561",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11568",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 11568
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11569",
+ "attributes": {
+ "nRTCI": "11569",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11562",
+ "attributes": {
+ "nRTCI": "11562",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11561",
+ "attributes": {
+ "nRTCI": "11561",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "11569",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 11569
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "11568",
+ "attributes": {
+ "nRTCI": "11568",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11562",
+ "attributes": {
+ "nRTCI": "11562",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "11561",
+ "attributes": {
+ "nRTCI": "11561",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "10896",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 10896
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14655",
+ "attributes": {
+ "nRTCI": "14655",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14656",
+ "attributes": {
+ "nRTCI": "14656",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10897",
+ "attributes": {
+ "nRTCI": "10897",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "10897",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 10897
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "10896",
+ "attributes": {
+ "nRTCI": "10896",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14656",
+ "attributes": {
+ "nRTCI": "14656",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14655",
+ "attributes": {
+ "nRTCI": "14655",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14655",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 14655
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14656",
+ "attributes": {
+ "nRTCI": "14656",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10896",
+ "attributes": {
+ "nRTCI": "10896",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10897",
+ "attributes": {
+ "nRTCI": "10897",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14656",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 14656
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14655",
+ "attributes": {
+ "nRTCI": "14655",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10896",
+ "attributes": {
+ "nRTCI": "10896",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "10897",
+ "attributes": {
+ "nRTCI": "10897",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "13905",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 13905
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "13910",
+ "attributes": {
+ "nRTCI": "13910",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "13910",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 13910
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15360",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15360
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13910",
+ "attributes": {
+ "nRTCI": "13910",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15361",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15361
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13910",
+ "attributes": {
+ "nRTCI": "13910",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15548",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15548
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15549",
+ "attributes": {
+ "nRTCI": "15549",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14427",
+ "attributes": {
+ "nRTCI": "14427",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "15549",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 15549
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "14427",
+ "attributes": {
+ "nRTCI": "14427",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15548",
+ "attributes": {
+ "nRTCI": "15548",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ },
+ {
+ "idNRCellCU": "14427",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "cellLocalId": 14427
+ },
+ "NRCellRelation": [{
+ "idNRCellRelation": "15549",
+ "attributes": {
+ "nRTCI": "15549",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15548",
+ "attributes": {
+ "nRTCI": "15548",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15425",
+ "attributes": {
+ "nRTCI": "15425",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15296",
+ "attributes": {
+ "nRTCI": "15296",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15155",
+ "attributes": {
+ "nRTCI": "15155",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13999",
+ "attributes": {
+ "nRTCI": "13999",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "14000",
+ "attributes": {
+ "nRTCI": "14000",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15825",
+ "attributes": {
+ "nRTCI": "15825",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15548",
+ "attributes": {
+ "nRTCI": "15548",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "13905",
+ "attributes": {
+ "nRTCI": "13905",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15361",
+ "attributes": {
+ "nRTCI": "15361",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15174",
+ "attributes": {
+ "nRTCI": "15174",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15175",
+ "attributes": {
+ "nRTCI": "15175",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15176",
+ "attributes": {
+ "nRTCI": "15176",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15426",
+ "attributes": {
+ "nRTCI": "15426",
+ "isHOAllowed": true
+ }
+ },
+ {
+ "idNRCellRelation": "15360",
+ "attributes": {
+ "nRTCI": "15360",
+ "isHOAllowed": true
+ }
+ }
+ ]
+ }
+ ]
+ }],
+ "GNBDUFunction": [{
+ "idGNBDUFunction": "660",
+ "attributes": {
+ "gNBDUId": 660,
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBDUName": "gnduserver6",
+ "gNBIdLength": 25
+ },
+ "NRCellDU": [{
+ "idNRCellDU": "15361",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15361,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 25,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15360",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15360,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 24,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "14427",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 14427,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 28,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15549",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15549,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 27,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "15548",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 15548,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 29,
+ "nRTAC": 310
+ }
+ }
+ ]
+ },
+ {
+ "idGNBDUFunction": "550",
+ "attributes": {
+ "gNBDUId": 550,
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBDUName": "gnduserver5",
+ "gNBIdLength": 25
+ },
+ "NRCellDU": [{
+ "idNRCellDU": "14655",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 14655,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 19,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "13905",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 13905,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 26,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "14656",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 14656,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 20,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "10897",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 10897,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 21,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "13910",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 13910,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 23,
+ "nRTAC": 310
+ }
+ }
+ ]
+ },
+ {
+ "idGNBDUFunction": "440",
+ "attributes": {
+ "gNBDUId": 440,
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "gNBDUName": "gnduserver4",
+ "gNBIdLength": 25
+ },
+ "NRCellDU": [{
+ "idNRCellDU": "11561",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 11561,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 15,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "11569",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 11569,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 18,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "11562",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 11562,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 16,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "10896",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 10896,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 22,
+ "nRTAC": 310
+ }
+ },
+ {
+ "idNRCellDU": "11568",
+ "attributes": {
+ "sAP": [{
+ "host": "localhost",
+ "port": 8080
+ }],
+ "nRSectorCarrierRef": [
+ "OU=Sales"
+ ],
+ "cellLocalId": 11568,
+ "administrativeState": "UNLOCKED",
+ "nRPCI": 17,
+ "nRTAC": 310
+ }
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_data.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_data.json
new file mode 100644
index 00000000..0e4e73f4
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_data.json
@@ -0,0 +1,13 @@
+{
+ "neighbor": ["Chn0066", "Chn0067", "Chn0068", "Chn0069", "Chn0070", "Chn0072", "Chn0073", "Chn0074", "Chn0075", "Chn0076", "Chn0077", "Chn0078", "Chn0079", "Chn0080"],
+ "Cell": {
+ "networkId": "ran-1",
+ "nodeId": "Chn0071",
+ "physicalCellId": 1,
+ "pnfId": "ncserver5",
+ "sectorNumber": null,
+ "latitude": "27.55626304907802",
+ "longitude": "-58.48690415723466",
+ "notes": "NA"
+ }
+} \ No newline at end of file
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_list.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_list.json
new file mode 100644
index 00000000..4f961ae2
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cell_list.json
@@ -0,0 +1,60 @@
+{
+ "cellId": "Chn0071",
+ "nbrList": [{
+ "targetCellId": "Chn0066",
+ "pciValue": 0,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0067",
+ "pciValue": 1,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0068",
+ "pciValue": 2,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0069",
+ "pciValue": 3,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0070",
+ "pciValue": 4,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0072",
+ "pciValue": 6,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0073",
+ "pciValue": 7,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0074",
+ "pciValue": 8,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0075",
+ "pciValue": 9,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0076",
+ "pciValue": 10,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0077",
+ "pciValue": 11,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0078",
+ "pciValue": 12,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0079",
+ "pciValue": 13,
+ "ho": true
+ }, {
+ "targetCellId": "Chn0080",
+ "pciValue": 14,
+ "ho": true
+ }]
+} \ No newline at end of file
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-cell-details.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-cell-details.json
new file mode 100644
index 00000000..2f02274a
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-cell-details.json
@@ -0,0 +1 @@
+{"NRCellCU":[{"idNRCellCU":"Chn0005","NRCellRelation":[{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":2,"nRTCI":"Chn0009","isHOAllowed":true}},{"idNRCellRelation":"Chn0004","attributes":{"nRPCI":0,"nRTCI":"Chn0004","isHOAllowed":true}},{"idNRCellRelation":"Chn0006","attributes":{"nRPCI":1,"nRTCI":"Chn0006","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0008","NRCellRelation":[{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":9,"nRTCI":"Chn0009","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0009","NRCellRelation":[{"idNRCellRelation":"Chn0008","attributes":{"nRPCI":8,"nRTCI":"Chn0008","isHOAllowed":true}},{"idNRCellRelation":"Chn0005","attributes":{"nRPCI":5,"nRTCI":"Chn0005","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0006","NRCellRelation":[{"idNRCellRelation":"Chn0004","attributes":{"nRPCI":4,"nRTCI":"Chn0004","isHOAllowed":true}},{"idNRCellRelation":"Chn0005","attributes":{"nRPCI":5,"nRTCI":"Chn0005","isHOAllowed":true}},{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":9,"nRTCI":"Chn0009","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0004","NRCellRelation":[{"idNRCellRelation":"Chn0006","attributes":{"nRPCI":6,"nRTCI":"Chn0006","isHOAllowed":true}},{"idNRCellRelation":"Chn0005","attributes":{"nRPCI":0,"nRTCI":"Chn0005","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}}]}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-neighbour-list.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-neighbour-list.json
new file mode 100644
index 00000000..15872797
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-neighbour-list.json
@@ -0,0 +1,2 @@
+{"idNRCellCU":"Chn0005","NRCellRelation":[{"idNRCellRelation":"Chn0006","attributes":{"nRPCI":2,"nRTCI":"Chn0006","isHOAllowed":true}},{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":4,"nRTCI":"Chn0009","isHOAllowed":true}},{"idNRCellRelation":"Chn0004","attributes":{"nRPCI":0,"nRTCI":"Chn0004","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}}
+
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pci-list.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pci-list.json
new file mode 100644
index 00000000..4b4ab758
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pci-list.json
@@ -0,0 +1 @@
+{"nRPCI":1,"nRTAC":14777,"arfcnDL":1,"arfcnUL":2,"arfcnSUL":3,"ssbOffset":9,"userLabel":"user","cellLocalId":15289,"ssbDuration":4,"nRCellDU-url":"10.165.160.15:8083","ssbFrequency":7,"bSChannelBwDL":4,"bSChannelBwUL":5,"bSChannelBwSUL":6,"nRSectorCarrierRef":["OU=Sales"],"ssbSubCarrierSpacing":15,"sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":20,"configParameter":"uLThptPerSlice"},{"configValue":20,"configParameter":"dLThptPerSlice"}]}]}],"RRMPolicyRatio":[{"id":"34","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":23},"rRMPolicyMinRatio":{"value":4},"rRMPolicyDedicatedRatio":{"value":5},"rRMPolicyMemberList":[{"idx":{"value":34},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pnf-name.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pnf-name.json
new file mode 100644
index 00000000..956b5b0a
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/cps-pnf-name.json
@@ -0,0 +1,2 @@
+[{"idGNBCUCPFunction":"cucpserver1","NRCellCU":[{"idNRCellCU":"Chn0006","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0005","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0004","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0009","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0008","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}}],"attributes":{"gNBId":32,"gNBCUName":"cucpserver1","userLabel":"user","gNBIdLength":23,"gNBCUCPFunction-url":"10.165.160.13:6080","sAP":[{"host":"localhost","port":{"value":8080}}],"RRMPolicyRatio":[{"id":"43","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":43},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}}]
+
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_configdb.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_configdb.json
new file mode 100644
index 00000000..3d423537
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_configdb.json
@@ -0,0 +1,14 @@
+{
+ "transactionId": "fff33db3-8fc9-4e29-89ff-7419c85900bd",
+ "requestId": "742b9e6a-aa55-487e-9d71-a4a5e05b3981",
+ "requestStatus": "completed",
+ "statusMessage": "success",
+ "solutions": {
+ "networkId": "ran-1",
+ "pciSolutions": [{
+ "cellId": "Chn0071",
+ "pci": "5"
+ }],
+ "anrSolutions": []
+ }
+}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_response.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_response.json
new file mode 100644
index 00000000..e3fccae2
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_async_response.json
@@ -0,0 +1,17 @@
+{
+ "transactionId": "fff33db3-8fc9-4e29-89ff-7419c85900bd",
+ "requestId": "742b9e6a-aa55-487e-9d71-a4a5e05b3981",
+ "requestStatus": "completed",
+ "statusMessage": "success",
+ "solutions": {
+ "networkId": "10000000",
+ "pciSolutions": [{
+ "cellId": "15176",
+ "pci": "3"
+ },
+ {
+ "cellId": "15174",
+ "pci": "1"}],
+ "anrSolutions": []
+ }
+}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_syn_response.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_syn_response.json
new file mode 100644
index 00000000..c9260bbc
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/oof_syn_response.json
@@ -0,0 +1,6 @@
+{
+ "requestId": "742b9e6a-aa55-487e-9d71-a4a5e05b3981",
+ "transactionId": "fff33db3-8fc9-4e29-89ff-7419c85900bd",
+ "requestStatus": "accepted",
+ "statusMessage": ""
+} \ No newline at end of file
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/pci_value.json b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/pci_value.json
new file mode 100644
index 00000000..6b6d4475
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/cps-sonhandler/sim-data/pci_value.json
@@ -0,0 +1,4 @@
+{
+ "attributeName": "PCIvalue",
+ "value": "5"
+} \ No newline at end of file
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-cell-details.json b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-cell-details.json
new file mode 100644
index 00000000..2f02274a
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-cell-details.json
@@ -0,0 +1 @@
+{"NRCellCU":[{"idNRCellCU":"Chn0005","NRCellRelation":[{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":2,"nRTCI":"Chn0009","isHOAllowed":true}},{"idNRCellRelation":"Chn0004","attributes":{"nRPCI":0,"nRTCI":"Chn0004","isHOAllowed":true}},{"idNRCellRelation":"Chn0006","attributes":{"nRPCI":1,"nRTCI":"Chn0006","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0008","NRCellRelation":[{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":9,"nRTCI":"Chn0009","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0009","NRCellRelation":[{"idNRCellRelation":"Chn0008","attributes":{"nRPCI":8,"nRTCI":"Chn0008","isHOAllowed":true}},{"idNRCellRelation":"Chn0005","attributes":{"nRPCI":5,"nRTCI":"Chn0005","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0006","NRCellRelation":[{"idNRCellRelation":"Chn0004","attributes":{"nRPCI":4,"nRTCI":"Chn0004","isHOAllowed":true}},{"idNRCellRelation":"Chn0005","attributes":{"nRPCI":5,"nRTCI":"Chn0005","isHOAllowed":true}},{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":9,"nRTCI":"Chn0009","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}},{"idNRCellCU":"Chn0004","NRCellRelation":[{"idNRCellRelation":"Chn0006","attributes":{"nRPCI":6,"nRTCI":"Chn0006","isHOAllowed":true}},{"idNRCellRelation":"Chn0005","attributes":{"nRPCI":0,"nRTCI":"Chn0005","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}}]}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-neighbour-list.json b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-neighbour-list.json
new file mode 100644
index 00000000..15872797
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-neighbour-list.json
@@ -0,0 +1,2 @@
+{"idNRCellCU":"Chn0005","NRCellRelation":[{"idNRCellRelation":"Chn0006","attributes":{"nRPCI":2,"nRTCI":"Chn0006","isHOAllowed":true}},{"idNRCellRelation":"Chn0009","attributes":{"nRPCI":4,"nRTCI":"Chn0009","isHOAllowed":true}},{"idNRCellRelation":"Chn0004","attributes":{"nRPCI":0,"nRTCI":"Chn0004","isHOAllowed":true}}],"attributes":{"cellLocalId":12345}}
+
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pci-list.json b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pci-list.json
new file mode 100644
index 00000000..4b4ab758
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pci-list.json
@@ -0,0 +1 @@
+{"nRPCI":1,"nRTAC":14777,"arfcnDL":1,"arfcnUL":2,"arfcnSUL":3,"ssbOffset":9,"userLabel":"user","cellLocalId":15289,"ssbDuration":4,"nRCellDU-url":"10.165.160.15:8083","ssbFrequency":7,"bSChannelBwDL":4,"bSChannelBwUL":5,"bSChannelBwSUL":6,"nRSectorCarrierRef":["OU=Sales"],"ssbSubCarrierSpacing":15,"sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":20,"configParameter":"uLThptPerSlice"},{"configValue":20,"configParameter":"dLThptPerSlice"}]}]}],"RRMPolicyRatio":[{"id":"34","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":23},"rRMPolicyMinRatio":{"value":4},"rRMPolicyDedicatedRatio":{"value":5},"rRMPolicyMemberList":[{"idx":{"value":34},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}
diff --git a/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pnf-name.json b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pnf-name.json
new file mode 100644
index 00000000..956b5b0a
--- /dev/null
+++ b/scripts/dcaegen2-services-son-handler/sonhandler/sim-data/cps-pnf-name.json
@@ -0,0 +1,2 @@
+[{"idGNBCUCPFunction":"cucpserver1","NRCellCU":[{"idNRCellCU":"Chn0006","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0005","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0004","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0009","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}},{"idNRCellCU":"Chn0008","attributes":{"cellLocalId":15289,"nRCellCU-url":"10.165.160.15:8083","sAP":[{"host":"localhost","port":{"value":8080}}],"pLMNInfoList":[{"mcc":"310","mnc":"410","sNSSAIList":[{"sNssai":"111-1111","status":"active","configData":[{"configValue":10,"configParameter":"maxNumberOfConns"}]}]}],"RRMPolicyRatio":[{"id":"55","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":55},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}}],"attributes":{"gNBId":32,"gNBCUName":"cucpserver1","userLabel":"user","gNBIdLength":23,"gNBCUCPFunction-url":"10.165.160.13:6080","sAP":[{"host":"localhost","port":{"value":8080}}],"RRMPolicyRatio":[{"id":"43","attributes":{"quotaType":"STRICT","resourceType":"sharing","rRMPolicyMaxRatio":{"value":22},"rRMPolicyMinRatio":{"value":3},"rRMPolicyDedicatedRatio":{"value":4},"rRMPolicyMemberList":[{"idx":{"value":43},"mcc":"310","mnc":"410","sNSSAI":"111-1111"}]}}]}}]
+
diff --git a/tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_fm.json b/tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_fm.json
new file mode 100644
index 00000000..e8d7e518
--- /dev/null
+++ b/tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_fm.json
@@ -0,0 +1,2 @@
+
+{"Configurations":[{"data":{"FAPService":{"alias":"15176","X0005b9Lte":{"phyCellIdInUse":3,"pnfName":"220"},"CellConfig":{"LTE":{"RAN":{"Common":{"CellIdentity":"15176"}}}}}}},{"data":{"FAPService":{"alias":"15174","X0005b9Lte":{"phyCellIdInUse":1,"pnfName":"220"},"CellConfig":{"LTE":{"RAN":{"Common":{"CellIdentity":"15174"}}}}}}}]}
diff --git a/tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_pm.json b/tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_pm.json
new file mode 100644
index 00000000..2a56f2cc
--- /dev/null
+++ b/tests/dcaegen2-services-son-handler/testcases/data/cps_expected_payload_pm.json
@@ -0,0 +1 @@
+{"Configurations":[{"data":{"FAPService":{"alias":"Chn0002","CellConfig":{"LTE":{"RAN":{"Common":{"CellIdentity":"Chn0002"},"NeighborListInUse":{"LTECell":[{"PNFName":"ncserver1","PLMNID":"plmnid1","CID":"Chn0004","PhyCellID":0,"Blacklisted":"true"},{"PNFName":"ncserver1","CID":"Chn0001","PhyCellID":0,"Blacklisted":"true"}],"LTECellNumberOfEntries":"2"}}}}}}}]}
diff --git a/tests/dcaegen2-services-son-handler/testcases/data/cps_fault_notification.json b/tests/dcaegen2-services-son-handler/testcases/data/cps_fault_notification.json
new file mode 100644
index 00000000..6b09e5ee
--- /dev/null
+++ b/tests/dcaegen2-services-son-handler/testcases/data/cps_fault_notification.json
@@ -0,0 +1,35 @@
+{
+ "event":{
+ "commonEventHeader":{
+ "domain":"fault",
+ "eventId":"fault000002",
+ "eventName":"Fault_RansimAgent-Wipro_RanPCIProblem",
+ "lastEpochMicrosec":1.633608637561E15,
+ "priority":"High",
+ "reportingEntityName":"ncserver1",
+ "sequence":1,
+ "sourceName":"15289",
+ "startEpochMicrosec":1.633608637561E15,
+ "version":"4.0.1",
+ "nfNamingCode":"RansimAgent",
+ "reportingEntityId":"69fb75e9-b85e-4132-ac21-515e9e8f5edb",
+ "sourceId":"94c26740-c875-4122-9e81-82723769bb54",
+ "nfVendorName":"Wipro",
+ "vesEventListenerVersion":"7.2",
+ "timeZoneOffset":"UTC+05:30"
+ },
+ "faultFields":{
+ "alarmCondition":"RanPciCollisionConfusionOccurred",
+ "eventSeverity":"CRITICAL",
+ "eventCategory": "PCIConfusion",
+ "eventSourceType":"other",
+ "faultFieldsVersion":"4.0",
+ "specificProblem":"15290",
+ "vfStatus":"Active",
+ "alarmAdditionalInformation":{
+ "networkId":"10000000"
+ }
+ }
+ }
+}
+
diff --git a/tests/dcaegen2-services-son-handler/testcases/data/fault_notification.json b/tests/dcaegen2-services-son-handler/testcases/data/fault_notification.json
index e5a327ad..3d2b2c6e 100644
--- a/tests/dcaegen2-services-son-handler/testcases/data/fault_notification.json
+++ b/tests/dcaegen2-services-son-handler/testcases/data/fault_notification.json
@@ -2,7 +2,7 @@
"event": {
"commonEventHeader": {
"version": "4.0.1",
- "vesEventListenerVersion": "7.0.1",
+ "vesEventListenerVersion": "7.2",
"domain": "fault",
"eventName": "Fault_RansimAgent-Wipro_RanPCIProblem",
"eventId": "fault000001",
@@ -22,7 +22,8 @@
"faultFieldsVersion": "4.0",
"alarmCondition": "RanPciCollisionConfusionOccurred",
"eventSourceType": "other",
- "specificProblem": "Collision",
+ "eventCategory": "PCIConfusion",
+ "specificProblem": "Chn0001",
"eventSeverity": "CRITICAL",
"vfStatus": "Active",
"alarmAdditionalInformation": {
@@ -32,4 +33,4 @@
}
}
}
-} \ No newline at end of file
+}
diff --git a/tests/dcaegen2-services-son-handler/testcases/data/performance_notification.json b/tests/dcaegen2-services-son-handler/testcases/data/performance_notification.json
index 7721163a..87d89067 100644
--- a/tests/dcaegen2-services-son-handler/testcases/data/performance_notification.json
+++ b/tests/dcaegen2-services-son-handler/testcases/data/performance_notification.json
@@ -15,7 +15,7 @@
"lastEpochMicrosec": 1551790542000000,
"nfNamingCode": "RansimAgent",
"nfVendorName": "Wipro",
- "vesEventListenerVersion": "7.0.1",
+ "vesEventListenerVersion": "7.2",
"timeZoneOffset": "UTC-05:30"
},
"measurementFields": {
@@ -39,4 +39,4 @@
]
}
}
-} \ No newline at end of file
+}
diff --git a/tests/dcaegen2-services-son-handler/testcases/son-handler-test-cps.robot b/tests/dcaegen2-services-son-handler/testcases/son-handler-test-cps.robot
new file mode 100644
index 00000000..63f23f2d
--- /dev/null
+++ b/tests/dcaegen2-services-son-handler/testcases/son-handler-test-cps.robot
@@ -0,0 +1,102 @@
+*** Settings ***
+Library Collections
+Library Process
+Library RequestsLibrary
+Library String
+Library OperatingSystem
+
+Suite Teardown Delete All Sessions
+
+*** Variables ***
+${SON_HANDLER_BASE_URL} http://${SONHMS_IP}:8080
+${HEALTHCHECK_ENDPOINT} /healthcheck
+${DMAAP_URL} http://${DMAAP_IP}:3904/events
+${unauthenticated.DCAE_CL_OUTPUT} /unauthenticated.DCAE_CL_OUTPUT/23/23
+${POST_DMAAP_EVENT_FOR_FM_NOTIF_URL} http://${DMAAP_IP}:3904/events/unauthenticated.SEC_FAULT_OUTPUT
+${POST_DMAAP_EVENT_FOR_PM_NOTIF_URL} http://${DMAAP_IP}:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT
+${POST_DMAAP_EVENT_FOR_POLICY_RESPONSE} http://${DMAAP_IP}:3904/events/DCAE_CL_RSP
+
+
+*** Test Cases ***
+
+HealthCheck
+
+ Create Session sonhms ${SON_HANDLER_BASE_URL}
+ ${resp}= Get Request sonhms ${HEALTHCHECK_ENDPOINT}
+ Should Be Equal As Strings ${resp.status_code} 200
+
+
+Post fm notification to dmaap
+ Create Session dmaap ${DMAAP_URL}
+ ${headers}= Create Dictionary Content-Type application/json
+ ${data}= Get File ${TEST_ROBOT_DIR}/data/cps_fault_notification.json
+ ${response}= Evaluate requests.post('${POST_DMAAP_EVENT_FOR_FM_NOTIF_URL}', data=$data)
+ Should Be Equal As Strings ${response.status_code} 200
+
+
+Verify fm notification trigger in sonhms
+ Create Session dmaap ${DMAAP_URL}
+ FOR ${i} IN RANGE 10
+ ${result}= Get Request dmaap ${unauthenticated.DCAE_CL_OUTPUT}
+ Exit For Loop If ${result.json()} != @{EMPTY}
+ Log Waiting for sonhms to handle trigger... console=${True}
+ Sleep 30s
+ END
+ ${expected_payload}= Get File ${TEST_ROBOT_DIR}/data/cps_expected_payload_fm.json
+ ${result}= Convert To String ${result.content}
+ ${result_string}= Get Substring ${result} 2 -2
+ ${actual_data}= Evaluate json.loads("""${result_string}""") json
+ ${actual_payload}= Set Variable ${actual_data['payload']}
+ Should Be True """${actual_payload}""".strip() == """${expected_payload}""".strip()
+
+
+Post pm notification to dmaap
+ ${data}= Get File ${TEST_ROBOT_DIR}/data/performance_notification.json
+ ${response}= Evaluate requests.post('${POST_DMAAP_EVENT_FOR_PM_NOTIF_URL}', data=$data)
+ Should Be Equal As Strings ${response.status_code} 200
+
+
+Verify pm notification trigger in sonhms
+ Create Session dmaap ${DMAAP_URL}
+ FOR ${i} IN RANGE 5
+ ${result}= Get Request dmaap ${unauthenticated.DCAE_CL_OUTPUT}
+ Exit For Loop If ${result.json()} != @{EMPTY}
+ Log Waiting for sonhms to handle trigger... console=${True}
+ Sleep 30s
+ END
+ ${expected_payload}= Get File ${TEST_ROBOT_DIR}/data/cps_expected_payload_pm.json
+ ${result}= Convert To String ${result.content}
+ ${result_string}= Get Substring ${result} 2 -2
+ ${actual_data}= Evaluate json.loads("""${result_string}""") json
+ ${actual_payload}= Set Variable ${actual_data['payload']}
+ Should Be True """${actual_payload}""".strip() == """${expected_payload}""".strip()
+
+
+Post policy negative acknowledgement to dmaap
+ ${data}= Get File ${TEST_ROBOT_DIR}/data/negative_ack_from_policy.json
+ FOR ${i} IN RANGE 3
+ ${response}= Evaluate requests.post('${POST_DMAAP_EVENT_FOR_POLICY_RESPONSE}', data=$data)
+ END
+ Should Be Equal As Strings ${response.status_code} 200
+
+
+Oof trigger for fixed Pci cells
+
+ Create Session dmaap ${DMAAP_URL}
+ ${headers}= Create Dictionary Content-Type application/json
+ ${data}= Get File ${TEST_ROBOT_DIR}/data/cps_fault_notification.json
+ ${response}= Evaluate requests.post('${POST_DMAAP_EVENT_FOR_FM_NOTIF_URL}', data=$data)
+
+ Create Session dmaap ${DMAAP_URL}
+ FOR ${i} IN RANGE 15
+ ${result}= Get Request dmaap ${unauthenticated.DCAE_CL_OUTPUT}
+ Exit For Loop If ${result.json()} != @{EMPTY}
+ Log Waiting for sonhms to handle trigger... console=${True}
+ Sleep 30s
+ END
+ ${expected_payload}= Get File ${TEST_ROBOT_DIR}/data/cps_expected_payload_fm.json
+ ${result}= Convert To String ${result.content}
+ ${result_string}= Get Substring ${result} 2 -2
+ ${actual_data}= Evaluate json.loads("""${result_string}""") json
+ ${actual_payload}= Set Variable ${actual_data['payload']}
+ Should Be True """${actual_payload}""".strip() == """${expected_payload}""".strip()
diff --git a/tests/dcaegen2-services-son-handler/testcases/sonhandler-test.robot b/tests/dcaegen2-services-son-handler/testcases/sonhandler-test.robot
index 6e93ffb9..27a36053 100644
--- a/tests/dcaegen2-services-son-handler/testcases/sonhandler-test.robot
+++ b/tests/dcaegen2-services-son-handler/testcases/sonhandler-test.robot
@@ -63,7 +63,7 @@ Verify pm notification trigger in sonhms
Log Waiting for sonhms to handle trigger... console=${True}
Sleep 30s
END
- ${expected_payload}= Get File ${TEST_ROBOT_DIR}/data/expected_payload_pm.json
+ ${expected_payload}= Get File ${TEST_ROBOT_DIR}/data/expected_payload_pm.json
${result}= Convert To String ${result.content}
${result_string}= Get Substring ${result} 2 -2
${actual_data}= Evaluate json.loads("""${result_string}""") json