Fix the JSONRPC read service issue
[integration/test.git] / csit / libraries / ClusterOpenFlow.robot
index 4936e3de43f70c834cf42a4c3dec40a65775c444..ac214ecefac2fea1bb21ecc24ad98f2cb6f6b40b 100644 (file)
@@ -1,8 +1,10 @@
 *** Settings ***
 Documentation     Cluster OpenFlow library. So far this library is only to be used by OpenFlow cluster test as it is very specific for this test.
+Library           Collections
 Library           RequestsLibrary
 Library           ${CURDIR}/ScaleClient.py
 Resource          ClusterManagement.robot
+Resource          CompareStream.robot
 Resource          MininetKeywords.robot
 Resource          Utils.robot
 Variables         ../variables/Variables.py
@@ -26,6 +28,8 @@ Get InventoryConfig Shard Status
 Check OpenFlow Shards Status
     [Arguments]    ${controller_index_list}=${EMPTY}
     [Documentation]    Check Status for all shards in OpenFlow application.
+    CompareStream.Run_Keyword_If_At_Least_Phosphorus    Collections.Remove Values From List    ${SHARD_OPER_LIST}    entity-ownership
+    Log    ${SHARD_OPER_LIST}
     ClusterManagement.Verify_Leader_Exists_For_Each_Shard    shard_name_list=${SHARD_OPER_LIST}    shard_type=operational    member_index_list=${controller_index_list}
     ClusterManagement.Verify_Leader_Exists_For_Each_Shard    shard_name_list=${SHARD_CONF_LIST}    shard_type=config    member_index_list=${controller_index_list}
 
@@ -155,18 +159,18 @@ Check Linear Topology On Member
     [Documentation]    Check Linear topology.
     ${session} =    Resolve_Http_Session_For_Member    member_index=${member_index}
     ${resp}    RequestsLibrary.Get Request    ${session}    ${OPERATIONAL_TOPO_API}
-    Log    ${resp.content}
+    Log    ${resp.text}
     Should Be Equal As Strings    ${resp.status_code}    200
     FOR    ${switch}    IN RANGE    1    ${switches+1}
-        Should Contain    ${resp.content}    "node-id":"openflow:${switch}"
-        Should Contain    ${resp.content}    "tp-id":"openflow:${switch}:1"
-        Should Contain    ${resp.content}    "tp-id":"openflow:${switch}:2"
-        Should Contain    ${resp.content}    "source-tp":"openflow:${switch}:2"
-        Should Contain    ${resp.content}    "dest-tp":"openflow:${switch}:2"
+        Should Contain    ${resp.text}    "node-id":"openflow:${switch}"
+        Should Contain    ${resp.text}    "tp-id":"openflow:${switch}:1"
+        Should Contain    ${resp.text}    "tp-id":"openflow:${switch}:2"
+        Should Contain    ${resp.text}    "source-tp":"openflow:${switch}:2"
+        Should Contain    ${resp.text}    "dest-tp":"openflow:${switch}:2"
         ${edge}    Evaluate    ${switch}==1 or ${switch}==${switches}
-        Run Keyword Unless    ${edge}    Should Contain    ${resp.content}    "tp-id":"openflow:${switch}:3"
-        Run Keyword Unless    ${edge}    Should Contain    ${resp.content}    "source-tp":"openflow:${switch}:3"
-        Run Keyword Unless    ${edge}    Should Contain    ${resp.content}    "dest-tp":"openflow:${switch}:3
+        Run Keyword Unless    ${edge}    Should Contain    ${resp.text}    "tp-id":"openflow:${switch}:3"
+        Run Keyword Unless    ${edge}    Should Contain    ${resp.text}    "source-tp":"openflow:${switch}:3"
+        Run Keyword Unless    ${edge}    Should Contain    ${resp.text}    "dest-tp":"openflow:${switch}:3
     END
 
 Check No Switches On Member
@@ -174,10 +178,10 @@ Check No Switches On Member
     [Documentation]    Check no switch is in topology
     ${session} =    Resolve_Http_Session_For_Member    member_index=${member_index}
     ${resp}    RequestsLibrary.Get Request    ${session}    ${OPERATIONAL_TOPO_API}
-    Log    ${resp.content}
+    Log    ${resp.text}
     Should Be Equal As Strings    ${resp.status_code}    200
     FOR    ${switch}    IN RANGE    1    ${switches+1}
-        Should Not Contain    ${resp.content}    openflow:${switch}
+        Should Not Contain    ${resp.text}    openflow:${switch}
     END
 
 Check Number Of Flows On Member
@@ -185,9 +189,9 @@ Check Number Of Flows On Member
     [Documentation]    Check number of flows in the inventory.
     ${session} =    Resolve_Http_Session_For_Member    member_index=${member_index}
     ${resp}=    RequestsLibrary.Get Request    ${session}    ${OPERATIONAL_NODES_API}
-    Log    ${resp.content}
+    Log    ${resp.text}
     Should Be Equal As Strings    ${resp.status_code}    200
-    ${count}=    Get Count    ${resp.content}    "priority"
+    ${count}=    Get Count    ${resp.text}    "priority"
     Should Be Equal As Integers    ${count}    ${flows}
 
 Check Number Of Groups On Member
@@ -195,7 +199,7 @@ Check Number Of Groups On Member
     [Documentation]    Check number of groups in the inventory.
     ${session} =    Resolve_Http_Session_For_Member    member_index=${member_index}
     ${resp}=    RequestsLibrary.Get Request    ${session}    ${OPERATIONAL_NODES_API}
-    Log    ${resp.content}
+    Log    ${resp.text}
     Should Be Equal As Strings    ${resp.status_code}    200
-    ${group_count}=    Get Count    ${resp.content}    "group-type"
+    ${group_count}=    Get Count    ${resp.text}    "group-type"
     Should Be Equal As Integers    ${group_count}    ${groups}