aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dcaegen2
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dcaegen2')
-rw-r--r--tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json10
-rw-r--r--tests/dcaegen2/prh-testcases/prh_tests.robot2
-rw-r--r--tests/dcaegen2/prh-testcases/resources/PrhLibrary.py12
3 files changed, 18 insertions, 6 deletions
diff --git a/tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json b/tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json
new file mode 100644
index 00000000..0aa0372c
--- /dev/null
+++ b/tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json
@@ -0,0 +1,10 @@
+{
+ "event": {
+ "commonEventHeader": {
+ "sourceName":"NOK6061ZW9"
+ },
+ "pnfRegistrationFields": {
+ "oamV4IpAddress":"10.17.123.24"
+ }
+ }
+}
diff --git a/tests/dcaegen2/prh-testcases/prh_tests.robot b/tests/dcaegen2/prh-testcases/prh_tests.robot
index 55f484fa..62698455 100644
--- a/tests/dcaegen2/prh-testcases/prh_tests.robot
+++ b/tests/dcaegen2/prh-testcases/prh_tests.robot
@@ -18,6 +18,7 @@ ${EVENT_WITH_MISSING_SOURCENAME} %{WORKSPACE}/tests/dcaegen2/prh-testcases/as
${EVENT_WITH_MISSING_SOURCENAME_AND_IPV4} %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName_and_IPV4.json
${EVENT_WITH_MISSING_SOURCENAME_AND_IPV6} %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName_and_IPV6.json
${EVENT_WITH_MISSING_SOURCENAME_IPV4_AND_IPV6} %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName_IPV4_and_IPV6.json
+${EVENT_WITHOUT_IPV6_FILED} %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json
${Not_json_format} %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/not_json_format.json
*** Test Cases ***
@@ -28,6 +29,7 @@ Valid DMaaP event can be converted to PNF_READY notification
${EVENT_WITH_ALL_VALID_REQUIRED_FIELDS}
${EVENT_WITH_IPV4}
${EVENT_WITH_IPV6}
+ ${EVENT_WITHOUT_IPV6_FILED}
Invalid DMaaP event cannot be converted to PNF_READY notification
[Documentation] PRH get invalid event from DMaaP with missing required fields - PRH does not produce PNF_READY notification
diff --git a/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py b/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
index 6a95c71e..656f6fc3 100644
--- a/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
+++ b/tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
@@ -21,18 +21,18 @@ class PrhLibrary(object):
@staticmethod
def create_pnf_ready_notification(json_file):
json_to_python = json.loads(json_file)
- ipv4 = json_to_python["event"]["pnfRegistrationFields"]["oamV4IpAddress"]
- ipv6 = json_to_python["event"]["pnfRegistrationFields"]["oamV6IpAddress"]
- correlationId = json_to_python["event"]["commonEventHeader"]["sourceName"]
- str_json = '{"correlationId":"' + correlationId + '","ipaddress-v4-oam":"' + ipv4 + '","ipaddress-v6-oam":"' + ipv6 + '"}'
+ ipv4 = json_to_python.get("event").get("pnfRegistrationFields").get("oamV4IpAddress")
+ ipv6 = json_to_python.get("event").get("pnfRegistrationFields").get("oamV6IpAddress") if "oamV6IpAddress" in json_to_python["event"]["pnfRegistrationFields"] else ""
+ correlation_id = json_to_python.get("event").get("commonEventHeader").get("sourceName")
+ str_json = '{"correlationId":"' + correlation_id + '","ipaddress-v4-oam":"' + ipv4 + '","ipaddress-v6-oam":"' + ipv6 + '"}'
python_to_json = json.dumps(str_json)
return python_to_json.replace("\\", "")[1:-1]
@staticmethod
def create_pnf_name(json_file):
json_to_python = json.loads(json_file)
- correlationId = json_to_python["event"]["commonEventHeader"]["sourceName"]
- return correlationId
+ correlation_id = json_to_python.get("sourceName")
+ return correlation_id
@staticmethod
def stop_aai():