Update Robot Framework format - step 1
[integration/test.git] / csit / libraries / SFC / SfcKeywords.robot
index 5ebe41449a370bac0e1f3ba9f84226e08b131504..6fb9919541f11f8199503d842df69c2da7828859 100644 (file)
@@ -1,33 +1,33 @@
 *** Settings ***
-Documentation     Common Keywords for the SFC Test suites.
-Library           Collections
-Resource          ../CompareStream.robot
-Resource          ../Utils.robot
+Documentation       Common Keywords for the SFC Test suites.
+
+Library             Collections
+Resource            ../CompareStream.robot
+Resource            ../Utils.robot
 
-*** Variables ***
 
 *** Keywords ***
 Get JSON Elements From URI
     [Arguments]    ${uri}
     ${resp} =    RequestsLibrary.Get Request    session    ${uri}
-    [Return]    ${resp.json()}
+    RETURN    ${resp.json()}
 
 Check Classifier Flows
     ${flowList} =    DockerSfc.Get Flows In Docker Containers
     BuiltIn.log    ${flowList}
-    ${expected_nsh_pop}=    Set_Variable_If_At_Most    oxygen    *actions=pop_nsh*    *actions=decap(),decap(),*
-    ${expected_nsh_push}=    Set_Variable_If_At_Most    oxygen    *actions=push_nsh*    *actions=encap(nsh*
+    ${expected_nsh_pop} =    Set_Variable_If_At_Most    oxygen    *actions=pop_nsh*    *actions=decap(),decap(),*
+    ${expected_nsh_push} =    Set_Variable_If_At_Most    oxygen    *actions=push_nsh*    *actions=encap(nsh*
     Collections.Should Contain Match    ${flowList}    ${expected_nsh_pop}
     Collections.Should Contain Match    ${flowList}    ${expected_nsh_push}
 
 Check Service Function Types Added
-    [Arguments]    ${elements}
     [Documentation]    Check that the service function types are updated with the service function names
+    [Arguments]    ${elements}
     Utils.Check For Elements At URI    ${SERVICE_FUNCTION_TYPES_URI}    ${elements}
 
 Check Service Function Types Removed
-    [Arguments]    ${elements}
     [Documentation]    Check that the service function names are removed from the service function types
+    [Arguments]    ${elements}
     Utils.Check For Elements Not At URI    ${SERVICE_FUNCTION_TYPES_URI}    ${elements}
 
 Check Empty Service Function Paths State
@@ -35,25 +35,29 @@ Check Empty Service Function Paths State
     Utils.No Content From URI    session    ${SERVICE_FUNCTION_PATH_STATE_URI}
 
 Check Rendered Service Path Created
-    [Arguments]    ${sfp_name}
     [Documentation]    Check that the Rendered Service Path is created
+    [Arguments]    ${sfp_name}
     ${sfp_name_elements_list} =    BuiltIn.Create List    ${sfp_name}
     Utils.Check For Elements At URI    ${SERVICE_FUNCTION_PATHS_STATE_URI}    ${sfp_name_elements_list}
 
 Check Rendered Service Path Deleted
-    [Arguments]    ${sfp_name}
     [Documentation]    Check that the Rendered Service Path is deleted
+    [Arguments]    ${sfp_name}
     Utils.No Content From URI    session    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}
 
 Get Rendered Service Path Name
-    [Arguments]    ${sfp_name}    ${get_reverse}=False
     [Documentation]    Given an SFP name, do a get on ${SERVICE_FUNCTION_PATH_STATE_URI} to get the RSP name
+    [Arguments]    ${sfp_name}    ${get_reverse}=False
     ${resp} =    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     # should be like this: {"service-function-path-state":[{"name":"SFC1-100","sfp-rendered-service-path":[{"name":"SFC1-100-Path-183"}]}]}
-    ${sfp_rendered_service_path_list} =    Collections.Get_From_Dictionary    ${resp.json()}    service-function-path-state
+    ${sfp_rendered_service_path_list} =    Collections.Get_From_Dictionary
+    ...    ${resp.json()}
+    ...    service-function-path-state
     ${sfp_rendered_service_path_dict} =    Collections.Get_From_List    ${sfp_rendered_service_path_list}    0
-    ${sfp_state_list} =    Collections.Get_From_Dictionary    ${sfp_rendered_service_path_dict}    sfp-rendered-service-path
+    ${sfp_state_list} =    Collections.Get_From_Dictionary
+    ...    ${sfp_rendered_service_path_dict}
+    ...    sfp-rendered-service-path
     ${list_length} =    BuiltIn.Get Length    ${sfp_state_list}
     # The "sfp-rendered-service-path" will only have 1 or 2 entries, depending on chain symmetry config.
     # The RSP name will be "<SfpName>-Path-<PathId>" and the optional symmetric name will be <SfpName>-Path-<PathId>-Reverse"
@@ -63,14 +67,19 @@ Get Rendered Service Path Name
         ${name} =    Collections.Get_From_Dictionary    ${rsp_name_dict}    name
         @{matches} =    String.Get Regexp Matches    ${name}    .*Reverse$
         ${matches_length} =    BuiltIn.Get Length    ${matches}
-        ${value} =    BuiltIn.Set Variable If    "${get_reverse}" == "False" and 0 == ${matches_length}    ${name}    "${get_reverse}" == "True" and 0 < ${matches_length}    ${name}
-        ...    "${value}" != "None"    ${value}
+        ${value} =    BuiltIn.Set Variable If
+        ...    "${get_reverse}" == "False" and 0 == ${matches_length}
+        ...    ${name}
+        ...    "${get_reverse}" == "True" and 0 < ${matches_length}
+        ...    ${name}
+        ...    "${value}" != "None"
+        ...    ${value}
     END
-    [Return]    ${value}
+    RETURN    ${value}
 
 Create Sfp And Wait For Rsp Creation
-    [Arguments]    ${sfp_file_name}
     [Documentation]    Given an SFP name, create it and wait for the associated RSPs to be created
+    [Arguments]    ${sfp_file_name}
     Utils.Add Elements To URI From File And Verify    ${SERVICE_FUNCTION_PATHS_URI}    ${sfp_file_name}
     ${sfp_dict} =    Utils.Json Parse From File    ${sfp_file_name}
     ${sfps} =    Collections.Get_From_Dictionary    ${sfp_dict}    service-function-paths
@@ -80,16 +89,24 @@ Create Sfp And Wait For Rsp Creation
     FOR    ${i}    IN RANGE    ${list_length}
         ${sfp_entry_dict} =    Collections.Get From List    ${sfp_json_list}    ${i}
         ${sfp_name} =    Collections.Get_From_Dictionary    ${sfp_entry_dict}    name
-        ${status}    ${symmetric} =    BuiltIn.Run Keyword And Ignore Error    Collections.Get_From_Dictionary    ${sfp_entry_dict}    symmetric
+        ${status}    ${symmetric} =    BuiltIn.Run Keyword And Ignore Error
+        ...    Collections.Get_From_Dictionary
+        ...    ${sfp_entry_dict}
+        ...    symmetric
         ${symmetric} =    BuiltIn.Set Variable If    "${status}" == "FAIL"    False    ${symmetric}
         ${num_names} =    BuiltIn.Set Variable If    "${symmetric}" == "False"    2    3
-        BuiltIn.Wait Until Keyword Succeeds    60s    2s    Utils.Check For Specific Number Of Elements At URI    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}    name
+        BuiltIn.Wait Until Keyword Succeeds
+        ...    60s
+        ...    2s
+        ...    Utils.Check For Specific Number Of Elements At URI
+        ...    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}
+        ...    name
         ...    ${num_names}
     END
 
 Delete Sfp And Wait For Rsps Deletion
-    [Arguments]    ${sfp_name}
     [Documentation]    Given an SFP name, delete it and wait for the associated SFP state and RSPs to be deleted
+    [Arguments]    ${sfp_name}
     Utils.Remove All Elements At URI And Verify    ${SERVICE_FUNCTION_PATH_URI}/${sfp_name}
     BuiltIn.Wait Until Keyword Succeeds    60s    2s    Check Rendered Service Path Deleted    ${sfp_name}
 
@@ -100,7 +117,7 @@ Delete All Sfps And Wait For Rsps Deletion
 
 Switch Ips In Json Files
     [Arguments]    ${json_dir}    ${container_names}
-    ${normalized_dir}=    OperatingSystem.Normalize Path    ${json_dir}/*.json
+    ${normalized_dir} =    OperatingSystem.Normalize Path    ${json_dir}/*.json
     FOR    ${cont_name}    IN    @{container_names}
         ${cont_ip} =    Get Docker IP    ${cont_name}
         OperatingSystem.Run    sudo sed -i 's/${cont_name}/${cont_ip}/g' ${normalized_dir}