Dcaegen2 Jenkins jobs are failing 08/133408/1
authorAndrewLamb <andrew.a.lamb@est.tech>
Fri, 24 Feb 2023 14:40:59 +0000 (14:40 +0000)
committerAndrewLamb <andrew.a.lamb@est.tech>
Fri, 24 Feb 2023 14:41:12 +0000 (14:41 +0000)
Issue-ID: INT-2199
Change-Id: I33552abd3c18570225a14cbc86adeeb9909511b6
Signed-off-by: AndrewLamb <andrew.a.lamb@est.tech>
tests/dcaegen2/prh-testcases/resources/PrhLibrary.py
tests/dcaegen2/prh-testcases/resources/prh_config_library.robot
tests/dcaegen2/prh-testcases/resources/prh_library.robot
tests/dcaegen2/testcases/resources/robot_library/DcaeLibrary.py
tests/dcaegen2/testcases/resources/robot_library/DmaapLibrary.py
tests/dcaegen2/testcases/resources/robot_library/dmaap_simulator/DMaaPHandler.py
tests/dcaegen2/testcases/resources/robot_library/dmaap_simulator/DMaaPServer.py

index d199228..d2b5e16 100644 (file)
@@ -35,7 +35,7 @@ class PrhLibrary(object):
         for line in container.logs(stream=True, since=self.test_start_time):
             print(line)
             for searched_entry in searched_entries:
-                if searched_entry in line.strip():
+                if searched_entry in line.decode(encoding='utf-8').strip():
                     return True
         else:
             return False
@@ -173,14 +173,14 @@ class PrhLibrary(object):
     def __extract_json(line, pattern):
         full_message = PrhLibrary.__extract_full_message_from_line(line)
         if full_message is not None:
-            match = pattern.match(full_message)
+            match = pattern.match(full_message.decode(encoding='utf-8'))
             if match:
                 return match.group(1).replace("\\n", "\n").replace("\\t", "\t")
         return None
 
     @staticmethod
     def __extract_full_message_from_line(line):
-        split = line.split("|")
+        split = line.split(bytes('|', 'utf-8'))
         if len(split) > 3:
             return split[3]
         return None
index 1e7c69a..8ce40c9 100644 (file)
@@ -57,5 +57,5 @@ Set logging level in config
     Put key-value to config    logging.level.${logger}    ${level}
 
 Generate random value
-    ${some_random_value}     evaluate    random.randint(sys.maxint/10, sys.maxint)    modules=random,sys
+    ${some_random_value}     evaluate    random.randint(sys.maxsize/10, sys.maxsize)    modules=random,sys
     [Return]    ${some_random_value}
\ No newline at end of file
index ff02d7f..1bf18bb 100644 (file)
@@ -56,7 +56,7 @@ Verify AAI not responding is logged
     ${ves_event}=    Get Data From File    ${test_case_directory}/ves-event.json
     Ensure Container Is Exited    aai_simulator
     Set VES event in DMaaP    ${ves_event}
-    Wait for one of PRH log entries    90s    connection timed out: aai    Host is unreachable: aai    No route to host: aai    failed to resolve 'aai'
+    Wait for one of PRH log entries    90s    connection timed out: aai    Host is unreachable: aai    No route to host: aai    Failed to resolve 'aai'
     [Teardown]    Ensure Container Is Running   aai_simulator
 
 Verify PNF re registration
@@ -98,20 +98,20 @@ Check created PNF_READY notification
     [Arguments]    ${expected_event_pnf_ready_in_dmaap}
     ${resp}=    Get Request    ${dmaap_session}    /verify/pnf_ready    headers=${suite_headers}
     Should Be Equal As Strings    ${resp.status_code}    200
-    Should Be Equal As JSON    ${resp.content}    ${expected_event_pnf_ready_in_dmaap}
+    Should Be Equal As JSON    ${resp.text}    ${expected_event_pnf_ready_in_dmaap}
 
 Check created PNF_UPDATE notification
     [Arguments]    ${expected_event_pnf_update_in_dmaap}
     ${resp}=    Get Request    ${dmaap_session}    /verify/pnf_update    headers=${suite_headers}
-    Log    Response from DMaaP: ${resp.content}
+    Log    Response from DMaaP: ${resp.text}
     Should Be Equal As Strings    ${resp.status_code}    200
-    Should Be Equal As JSON    ${resp.content}    ${expected_event_pnf_update_in_dmaap}
+    Should Be Equal As JSON    ${resp.text}    ${expected_event_pnf_update_in_dmaap}
 
 Check created Logical Link
     [Arguments]    ${expected_logical_link_in_aai}
     ${resp}=    Get Request    ${aai_session}    /verify/logical-link    headers=${suite_headers}
     Should Be Equal As Strings    ${resp.status_code}    200
-    Should Be Equal As JSON    ${resp.content}    ${expected_logical_link_in_aai}
+    Should Be Equal As JSON    ${resp.text}    ${expected_logical_link_in_aai}
 
 Wait for PRH log entry
     [Arguments]    ${timeout}    ${log_entry}
@@ -199,7 +199,7 @@ Verify logging level
     [Arguments]    ${logger}    ${expected_log_level}
     ${resp}=    Get Request    prh_session  /actuator/loggers/${logger}
     Should Be Equal As Integers    ${resp.status_code}    200
-    Log    ${resp.content}
+    Log    ${resp.text}
     Should Be Equal As Strings   ${resp.json()["configuredLevel"]}    ${expected_log_level}    ignore_case=true
 
 Verify logs with heartbeat
@@ -207,6 +207,7 @@ Verify logs with heartbeat
     Verify PRH logs contains    Heartbeat request received
 
 Verify PRH logs contains
-   [Arguments]    ${expected_entry}
-   ${log}=    Get docker logs since test start    prh
-   Should Contain    ${log}    ${expected_entry}
+    [Arguments]    ${expected_entry}
+    ${log}=    Get docker logs since test start    prh
+    ${logStr}=  Convert To String    ${log}
+    Should Contain    ${logStr}    ${expected_entry}
index d5dd972..37de28e 100644 (file)
@@ -73,7 +73,7 @@ class DcaeLibrary(object):
             return DcaeLibrary.extract_list_of_items_from_json_string(jsonstr, keyval)
         except Exception as e:
             logger.info("Json data parsing fails")
-            print str(e)
+            print (str(e))
             return []
 
     @staticmethod
@@ -108,5 +108,5 @@ if __name__ == '__main__':
     lib.enable_vesc_https_auth()
     
     ret = lib.setup_dmaap_server()
-    print ret
+    print (ret)
     time.sleep(100000)
index f79ba04..07985ea 100644 (file)
@@ -1,10 +1,10 @@
-from Queue import Queue
+from queue import Queue
 
 import robot.api.logger as logger
 import threading
 import time
 
-import DcaeVariables
+from robot_library import DcaeVariables
 from robot_library.dmaap_simulator import DMaaPServer
 from robot_library.dmaap_simulator.DMaaPQueue import DMaaPQueue
 
index cc73c36..0740b80 100644 (file)
@@ -5,9 +5,9 @@ Created on Aug 15, 2017
 '''
 import os
 import posixpath
-import BaseHTTPServer
+import http.server
 import urllib
-import urlparse
+from urllib.parse import urlparse
 import cgi
 import sys
 import shutil
@@ -15,18 +15,18 @@ import mimetypes
 from robot_library import DcaeVariables
 
 try:
-    from cStringIO import StringIO
+    import StringIO
 except ImportError:
-    from StringIO import StringIO
+    from io import StringIO
 
-class DMaaPHandler(BaseHTTPServer.BaseHTTPRequestHandler):
+class DMaaPHandler(http.server.BaseHTTPRequestHandler):
 
     DEFAULT_SUCCES_RESPONSE_CODE=200
     succes_response_code=DEFAULT_SUCCES_RESPONSE_CODE
 
     def __init__(self, dmaap_simulator, *args):
         self.dmaap_simulator = dmaap_simulator
-        BaseHTTPServer.BaseHTTPRequestHandler.__init__(self, *args)
+        http.server.BaseHTTPRequestHandler.__init__(self, *args)
 
     def do_POST(self):
         if 'POST' not in self.requestline:
@@ -42,13 +42,13 @@ class DMaaPHandler(BaseHTTPServer.BaseHTTPRequestHandler):
     def parse_the_posted_data(self):
         topic = self.extract_topic_from_path()
         content_len = self.get_content_length()
-        post_body = self.rfile.read(content_len)
+        post_body = self.rfile.read(content_len).decode("utf-8")
         post_body = self.get_json_part_of_post_body(post_body)
         event = "{\"" + topic + "\":" + post_body + "}"
         if self.dmaap_simulator.enque_event(event):
             resp_code = 0
         else:
-            print "enque event fails"
+            print ("enque event fails")
             resp_code = 500
         return resp_code
 
@@ -62,7 +62,7 @@ class DMaaPHandler(BaseHTTPServer.BaseHTTPRequestHandler):
         return self.path["/events/".__len__():]
 
     def get_content_length(self):
-        return int(self.headers.getheader('content-length', 0))
+        return int(self.headers.get('content-length', 0))
 
     def send_successful_response(self):
         if 'clientThrottlingState' in self.requestline:
index 8b66fd4..c40a2ef 100644 (file)
@@ -1,18 +1,18 @@
-import BaseHTTPServer
-import DMaaPHandler
+import http.server
+from robot_library.dmaap_simulator import DMaaPHandler
 
 
-class DMaaPServer(BaseHTTPServer.HTTPServer):
+class DMaaPServer(http.server.HTTPServer):
 
     def __init__(self, server_address, protocol, dmaap_simulator):
 
         def handler_class_constructor(*args):
             DMaaPHandler.DMaaPHandler(dmaap_simulator, *args)
         DMaaPHandler.protocol_version = protocol
-        BaseHTTPServer.HTTPServer.__init__(self, server_address, handler_class_constructor)
+        http.server.HTTPServer.__init__(self, server_address, handler_class_constructor)
 
         serer_address = self.socket.getsockname()
-        print "Serving HTTP on", serer_address[0], "port", serer_address[1], "..."
+        print ("Serving HTTP on", serer_address[0], "port", serer_address[1], "...")
 
     def set_dmaap_successfull_code(self,code_number):
         DMaaPHandler.DMaaPHandler.succes_response_code=code_number