aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dcaegen2/prh-testcases/resources
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dcaegen2/prh-testcases/resources')
-rw-r--r--tests/dcaegen2/prh-testcases/resources/PrhLibrary.py10
-rw-r--r--tests/dcaegen2/prh-testcases/resources/docker-compose.yml89
-rw-r--r--tests/dcaegen2/prh-testcases/resources/prh_library.robot2
-rw-r--r--tests/dcaegen2/prh-testcases/resources/simulator/AAI.py21
4 files changed, 85 insertions, 37 deletions
diff --git a/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py b/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
index 6667bd78..597f8647 100644
--- a/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
+++ b/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
@@ -41,16 +41,10 @@ class PrhLibrary(object):
def create_pnf_ready_notification_as_pnf_ready(json_file):
json_to_python = json.loads(json_file)
correlation_id = PrhLibrary.extract_correlation_id_value(json_to_python, "correlationId")
- serial_number = PrhLibrary.extract_value_from_pnfRegistrationFields(json_to_python, "serial-number", "serialNumber")
- vendor_name = PrhLibrary.extract_value_from_pnfRegistrationFields(json_to_python, "equip-vendor", "vendorName")
- model_number = PrhLibrary.extract_value_from_pnfRegistrationFields(json_to_python, "equip-model", "modelNumber")
- unit_type = PrhLibrary.extract_value_from_pnfRegistrationFields(json_to_python, "equip-type", "unitType")
additional_fields = PrhLibrary.extract_additional_fields_value(json_to_python)
- nf_role = json_to_python.get("event").get("commonEventHeader").get("nfNamingCode") if "nfNamingCode" in json_to_python["event"]["commonEventHeader"] else ""
-
- str_json = '{' + correlation_id + serial_number + vendor_name + model_number + unit_type + '"nf-role":"' + nf_role + '","sw-version":"",' + additional_fields
+ str_json = '{' + correlation_id + additional_fields
return json.dumps(str_json.rstrip(',') + '}').replace("\\", "")[1:-1]
@@ -91,7 +85,7 @@ class PrhLibrary(object):
@staticmethod
def create_pnf_name(json_file):
json_to_python = json.loads(json_file)
- correlation_id = json_to_python.get("sourceName")
+ correlation_id = json_to_python.get("event").get("commonEventHeader").get("sourceName") + '",' if "sourceName" in json_to_python["event"]["commonEventHeader"] else '",'
return correlation_id
@staticmethod
diff --git a/tests/dcaegen2/prh-testcases/resources/docker-compose.yml b/tests/dcaegen2/prh-testcases/resources/docker-compose.yml
index 8b6ea128..b49a14ba 100644
--- a/tests/dcaegen2/prh-testcases/resources/docker-compose.yml
+++ b/tests/dcaegen2/prh-testcases/resources/docker-compose.yml
@@ -3,9 +3,9 @@ services:
prh:
image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.prh.prh-app-server:latest
command: >
- --dmaap.dmaapConsumerConfiguration.dmaapHostName=dmaap-bc
+ --dmaap.dmaapConsumerConfiguration.dmaapHostName=dmaap-mr
--dmaap.dmaapConsumerConfiguration.dmaapPortNumber=2222
- --dmaap.dmaapProducerConfiguration.dmaapHostName=dmaap-bc
+ --dmaap.dmaapProducerConfiguration.dmaapHostName=dmaap-mr
--dmaap.dmaapProducerConfiguration.dmaapPortNumber=2222
--aai.aaiClientConfiguration.aaiHostPortNumber=3333
--aai.aaiClientConfiguration.aaiHost=aai
@@ -19,16 +19,16 @@ services:
container_name: prh
depends_on:
- cbs
- - dmaap-bc
+ - dmaap-mr
- aai
ssl_prh:
image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.prh.prh-app-server:latest
command: >
- --dmaap.dmaapConsumerConfiguration.dmaapHostName=dmaap-bc
+ --dmaap.dmaapConsumerConfiguration.dmaapHostName=dmaap-mr
--dmaap.dmaapConsumerConfiguration.dmaapPortNumber=2223
--dmaap.dmaapConsumerConfiguration.dmaapProtocol=https
- --dmaap.dmaapProducerConfiguration.dmaapHostName=dmaap-bc
+ --dmaap.dmaapProducerConfiguration.dmaapHostName=dmaap-mr
--dmaap.dmaapProducerConfiguration.dmaapPortNumber=2223
--dmaap.dmaapProducerConfiguration.dmaapProtocol=https
--aai.aaiClientConfiguration.aaiHostPortNumber=3334
@@ -54,10 +54,10 @@ services:
container_name: ssl_prh
depends_on:
- cbs
- - dmaap-bc
+ - dmaap-mr
- aai
- dmaap-bc:
+ dmaap-mr:
build:
context: simulator
dockerfile: DMaaP_simulator
@@ -89,21 +89,74 @@ services:
image: docker.io/consul:1.0.6
restart: on-failure
command: ["kv", "put", "-http-addr=http://consul-server:8500", "dcae-prh", '{
- "dmaap.dmaapConsumerConfiguration.dmaapHostName":"dmaap-bc",
+ "dmaap.dmaapConsumerConfiguration.dmaapUrl":"http://dmaap-mr:2222/events/unauthenticated.VES_PNFREG_OUTPUT",
+ "dmaap.dmaapConsumerConfiguration.dmaapHostName":"dmaap-mr",
"dmaap.dmaapConsumerConfiguration.dmaapPortNumber":2223,
- "dmaap.dmaapConsumerConfiguration.dmaapProtocol":"https",
- "dmaap.dmaapProducerConfiguration.dmaapHostName":"dmaap-bc",
+ "dmaap.dmaapConsumerConfiguration.dmaapTopicName": "events/unauthenticated.VES_PNFREG_OUTPUT",
+ "dmaap.dmaapConsumerConfiguration.dmaapProtocol":"http",
+ "dmaap.dmaapConsumerConfiguration.dmaapUserName":"admin",
+ "dmaap.dmaapConsumerConfiguration.dmaapUserPassword":"admin",
+ "dmaap.dmaapConsumerConfiguration.dmaapContentType": "application/json",
+ "dmaap.dmaapConsumerConfiguration.consumerId": "c12",
+ "dmaap.dmaapConsumerConfiguration.consumerGroup": "OpenDCAE-c12",
+ "dmaap.dmaapConsumerConfiguration.timeoutMs": -1,
+ "dmaap.dmaapConsumerConfiguration.messageLimit": -1,
+
+ "dmaap.dmaapProducerConfiguration.dmaapUrl":"http://dmaap-mr:2222/events/unauthenticated.PNF_READY",
+ "dmaap.dmaapProducerConfiguration.dmaapHostName":"dmaap-mr",
"dmaap.dmaapProducerConfiguration.dmaapPortNumber":2223,
- "dmaap.dmaapProducerConfiguration.dmaapProtocol":"https",
- "aai.aaiClientConfiguration.aaiHostPortNumber":3334,
+ "dmaap.dmaapProducerConfiguration.dmaapTopicName": "events/unauthenticated.PNF_READY",
+ "dmaap.dmaapProducerConfiguration.dmaapProtocol":"http",
+ "dmaap.dmaapProducerConfiguration.dmaapUserName":"admin",
+ "dmaap.dmaapProducerConfiguration.dmaapUserPassword":"admin",
+ "dmaap.dmaapProducerConfiguration.dmaapContentType": "application/json",
+
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapUrl":"http://dmaap-mr:2222/events/unauthenticated.PNF_UPDATE",
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapHostName": "dmaap-mr",
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapPortNumber": 2223,
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapTopicName": "events/unauthenticated.PNF_UPDATE",
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapProtocol": "http",
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapUserName": "admin",
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapUserPassword": "admin",
+ "dmaap.dmaapUpdateProducerConfiguration.dmaapContentType": "application/json",
+
+ "aai.aaiClientConfiguration.pnfUrl":"https://aai:3333/aai/v12/network/pnfs/pnf"
"aai.aaiClientConfiguration.aaiHost":"aai",
+ "aai.aaiClientConfiguration.aaiHostPortNumber":3334,
"aai.aaiClientConfiguration.aaiProtocol":"https",
- "security.enableAaiCertAuth":"true",
- "security.enableDmaapCertAuth":"true",
- "security.keyStorePath":"/tmp/certs/org.onap.dcae.jks",
- "security.keyStorePasswordPath":"/tmp/certs/keystore.password",
- "security.trustStorePath":"/tmp/certs/org.onap.dcae.trust.jks",
- "security.trustStorePasswordPath":"/tmp/certs/truststore.password"
+ "aai.aaiClientConfiguration.aaiUserName": "DCAE",
+ "aai.aaiClientConfiguration.aaiUserPassword": "DCAE",
+ "aai.aaiClientConfiguration.aaiIgnoreSslCertificateErrors": true,
+ "aai.aaiClientConfiguration.aaiBasePath": "/aai/v12",
+ "aai.aaiClientConfiguration.aaiPnfPath": "/network/pnfs/pnf",
+ "aai.aaiClientConfiguration.aaiServiceInstancePath":"/business/customers/customer/${customer}/service-subscriptions/service-subscription/${serviceType}/service-instances/service-instance/${serviceInstanceId}",
+
+ "security.trustStorePath":"change it",
+ "security.trustStorePasswordPath":"change it",
+ "security.keyStorePath":"change it",
+ "security.keyStorePasswordPath":"change it",
+ "security.enableAaiCertAuth":false,
+ "security.enableDmaapCertAuth":false,
+
+ "streams_publishes":{
+ "pnf-update":{
+ "dmaap_info":{
+ "topic_url":"http://dmaap-mr:2222/events/unauthenticated.PNF_UPDATE"
+ }
+ },
+ "pnf-ready":{
+ "dmaap_info":{
+ "topic_url":"http://dmaap-mr:2222/events/unauthenticated.PNF_READY"
+ }
+ }
+ },
+ "streams_subscribes":{
+ "ves-reg-output":{
+ "dmaap_info":{
+ "topic_url":"http://dmaap-mr:2222/events/unauthenticated.VES_PNFREG_OUTPUT"
+ }
+ }
+ }
}'
]
depends_on:
diff --git a/tests/dcaegen2/prh-testcases/resources/prh_library.robot b/tests/dcaegen2/prh-testcases/resources/prh_library.robot
index a6a01eb9..c2311852 100644
--- a/tests/dcaegen2/prh-testcases/resources/prh_library.robot
+++ b/tests/dcaegen2/prh-testcases/resources/prh_library.robot
@@ -33,9 +33,9 @@ Valid event processing
[Arguments] ${input_valid__ves_event_in_dmaap}
[Timeout] 30s
${data}= Get Data From File ${input_valid__ves_event_in_dmaap}
+ Set event in DMaaP ${data}
${pnf_name}= Create PNF name ${data}
Set PNF name in AAI ${pnf_name}
- Set event in DMaaP ${data}
${expected_event_pnf_ready_in_dpaap}= create pnf ready_notification as pnf ready ${data}
#TODO to fix after CBS merge
#Wait Until Keyword Succeeds 100x 300ms Check PNF_READY notification ${expected_event_pnf_ready_in_dpaap}
diff --git a/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py b/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py
index bd76c616..baa81651 100644
--- a/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py
+++ b/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py
@@ -16,7 +16,7 @@ logging.basicConfig(
logger = logging.getLogger('AAI-simulator-logger')
-pnfs = 'Empty'
+pnf_name = 'Empty'
pnf_entry = {}
@@ -29,10 +29,10 @@ class AAISetup(BaseHTTPRequestHandler):
def do_PUT(self):
logger.info('AAI SIM Setup Put execution')
- if re.search('/set_pnf$', self.path):
- global pnfs
+ if re.search('/set_pnf$', self.path): # to avoid regex collisions '$' must be added
+ global pnf_name
content_length = self._get_content_length()
- pnfs = self.rfile.read(content_length)
+ pnf_name = self.rfile.read(content_length).decode()
_mark_response_as_http_ok(self)
if re.search('/set_pnf_entry',self.path):
@@ -46,8 +46,8 @@ class AAISetup(BaseHTTPRequestHandler):
def do_POST(self):
logger.info('AAI SIM Setup Post execution')
if re.search('/reset', self.path):
- global pnfs
- pnfs = 'Empty'
+ global pnf_name
+ pnf_name = 'Empty'
_mark_response_as_http_ok(self)
return
@@ -60,17 +60,18 @@ class AAIHandler(BaseHTTPRequestHandler):
def do_GET(self):
logger.info('AAI SIM Get execution')
- if re.search('/get_pnf_entry', self.path):
+ full_request_path = '/aai/v12/network/pnfs/pnf/' + pnf_name
+ if re.search(full_request_path, self.path):
_mark_response_as_http_ok(self)
body = json.dumps(pnf_entry)
+ logger.info('AAI SIM Get json prepared')
self.wfile.write(body.encode())
-
return
def do_PATCH(self):
logger.info('AAI SIM Patch execution')
- pnfs_name = '/aai/v12/network/pnfs/pnf/' + pnfs.decode()
+ pnfs_name = '/aai/v12/network/pnfs/pnf/' + pnf_name
if re.search('wrong_aai_record', self.path):
self.send_response(400)
logger.info('Execution status 400')
@@ -93,4 +94,4 @@ def _main_(handler_class=AAIHandler, protocol="HTTP/1.0"):
if __name__ == '__main__':
- _main_()
+ _main_() \ No newline at end of file