Fixed job in Jenkins 53/69453/1
authorMariusz Wagner <mariusz.wagner@nokia.com>
Fri, 28 Sep 2018 07:03:08 +0000 (09:03 +0200)
committerMariusz Wagner <mariusz.wagner@nokia.com>
Fri, 28 Sep 2018 07:03:08 +0000 (09:03 +0200)
- fixed job
- added new TC - event without IPv6 field

Issue-ID: INT-673

Change-Id: I4fe7c2259d61c19eea6ad7b018c953ceee1442dc
Signed-off-by: Mariusz Wagner <mariusz.wagner@nokia.com>
tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json [new file with mode: 0644]
tests/dcaegen2/prh-testcases/prh_tests.robot
tests/dcaegen2/prh-testcases/resources/PrhLibrary.py

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 (file)
index 0000000..0aa0372
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "event": {
+    "commonEventHeader": {
+      "sourceName":"NOK6061ZW9"
+    },
+    "pnfRegistrationFields": {
+      "oamV4IpAddress":"10.17.123.24"
+    }
+  }
+}
index 55f484f..6269845 100644 (file)
@@ -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
index 6a95c71..656f6fc 100644 (file)
@@ -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():