Upgrade RF syntax for v3.2 compatibility
[integration/test.git] / csit / suites / bgpcep / bgpfunct / 090_bgp_functional_rt_constrain_validation.robot
index c18254ad6b597ffcb0468deb105c84f9a9d59908..b471d4b734556e3bcb6bc4fdcb99d4622deee7db 100644 (file)
@@ -55,19 +55,21 @@ ${NEW_AS_PATH}    ${EMPTY}
 Reconfigure_ODL_To_Accept_Connection
     [Documentation]    Configures BGP peer module with initiate-connection set to false.
     [Setup]    SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
-    : FOR    ${i}    ${type}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${BGP_PEER_TYPES}
-    \    &{ODL_CONFIG}=    BuiltIn.Create_Dictionary    IP=${ODL_${i}_IP}    TYPE=${type}    HOLDTIME=${HOLDTIME}    PEER_PORT=${BGP_TOOL_PORT}
-    \    ...    INITIATE=false    BGP_RIB=${RIB_NAME}    PASSIVE_MODE=true
-    \    TemplatedRequests.Put_As_Xml_Templated    ${EBGP_DIR}    mapping=${ODL_CONFIG}    session=${CONFIG_SESSION}
+    FOR    ${i}    ${type}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${BGP_PEER_TYPES}
+        &{ODL_CONFIG}=    BuiltIn.Create_Dictionary    IP=${ODL_${i}_IP}    TYPE=${type}    HOLDTIME=${HOLDTIME}    PEER_PORT=${BGP_TOOL_PORT}
+        ...    INITIATE=false    BGP_RIB=${RIB_NAME}    PASSIVE_MODE=true
+        TemplatedRequests.Put_As_Xml_Templated    ${EBGP_DIR}    mapping=${ODL_CONFIG}    session=${CONFIG_SESSION}
+    END
 
 Start_Bgp_Peers
     [Documentation]    Start Python speaker to connect to ODL. We give each speaker time until odl really starts to accept incoming
     ...    bgp connection. The failure happens if the incoming connection comes too quickly after configuring the peer.
     [Tags]    local_run
     [Setup]    SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
-    : FOR    ${i}    ${as_number}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${BGP_PEER_AS_NUMBERS}
-    \    BuiltIn.Log_Many    IP: ${ODL_${i}_IP}    as_number: ${as_number}
-    \    Start_Bgp_Peer    ${ODL_${i}_IP}    ${as_number}    800${i}    play.py.090.${i}
+    FOR    ${i}    ${as_number}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${BGP_PEER_AS_NUMBERS}
+        BuiltIn.Log_Many    IP: ${ODL_${i}_IP}    as_number: ${as_number}
+        Start_Bgp_Peer    ${ODL_${i}_IP}    ${as_number}    800${i}    play.py.090.${i}
+    END
 
 Play_To_Odl_ext_l3vpn_rt_arg
     [Documentation]    This TC sends route-target route containing route-target argument from node 1 to odl
@@ -103,15 +105,18 @@ Play_To_Odl_rt_constrain_type_1
     BuiltIn.Wait_Until_Keyword_Succeeds    3x    2s    TemplatedRequests.Get_As_Json_Templated    ${RT_CONSTRAIN_DIR}/rt_constrain_type_1/rib    mapping=${effective_rib_in}    session=${CONFIG_SESSION}
     ...    verify=True
     ${update} =    BgpRpcClient4.play_get
-    BuiltIn.Should_Be_Equal    ${update}    ${Empty}
+    Comment    From neon onwards there is extra BGP End-Of-RIB message
+    CompareStream.Run_Keyword_If_At_Most_Fluorine    BuiltIn.Should_Be_Equal    ${update}    ${Empty}
 
 Play_To_Odl_remove_rt
     [Documentation]    Removes RT from odl and then checks that second node withdrew l3vpn route and third node did not receive any message.
     BgpRpcClient3.play_clean
     Play_To_Odl_Routes_Removal_Template_BgpRpcClient3    rt_constrain_type_0    ${RT_CONSTRAIN_DIR}
-    BuiltIn.Wait_Until_Keyword_Succeeds    3x    2s    Verify_Empty_Reported_Data
+    Comment    From neon onwards there is extra BGP End-Of-RIB message
+    CompareStream.Run_Keyword_If_At_Most_Fluorine    BuiltIn.Wait_Until_Keyword_Succeeds    3x    2s    Verify_Empty_Reported_Data
     ${update} =    BgpRpcClient4.play_get
-    BuiltIn.Should_Be_Equal    ${update}    ${Empty}
+    Comment    From neon onwards there is extra BGP End-Of-RIB message
+    CompareStream.Run_Keyword_If_At_Most_Fluorine    BuiltIn.Should_Be_Equal    ${update}    ${Empty}
 
 Play_To_Odl_remove_routes
     [Documentation]    Removes rt arguments from odl.
@@ -129,10 +134,11 @@ Kill_Talking_BGP_Speakers
 Delete_Bgp_Peers_Configuration
     [Documentation]    Revert the BGP configuration to the original state: without any configured peers.
     [Setup]    SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
-    : FOR    ${i}    ${type}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${BGP_PEER_TYPES}
-    \    &{ODL_CONFIG} =    BuiltIn.Create_Dictionary    IP=${ODL_${i}_IP}    TYPE=${type}    HOLDTIME=${HOLDTIME}    PEER_PORT=${BGP_TOOL_PORT}
-    \    ...    INITIATE=false    BGP_RIB=${RIB_NAME}    PASSIVE_MODE=true
-    \    TemplatedRequests.Delete_Templated    ${EBGP_DIR}    mapping=${ODL_CONFIG}    session=${CONFIG_SESSION}
+    FOR    ${i}    ${type}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${BGP_PEER_TYPES}
+        &{ODL_CONFIG} =    BuiltIn.Create_Dictionary    IP=${ODL_${i}_IP}    TYPE=${type}    HOLDTIME=${HOLDTIME}    PEER_PORT=${BGP_TOOL_PORT}
+        ...    INITIATE=false    BGP_RIB=${RIB_NAME}    PASSIVE_MODE=true
+        TemplatedRequests.Delete_Templated    ${EBGP_DIR}    mapping=${ODL_CONFIG}    session=${CONFIG_SESSION}
+    END
 
 *** Keywords ***
 Start_Suite
@@ -222,9 +228,10 @@ Get_Update_Message_And_Compare_With_Hex_BgpRpcClient4
 Check_For_L3VPN_Odl_Avertisement
     [Arguments]    ${announce_hex}
     [Documentation]    Checks that each node received or did not receive update message containing given hex message.
-    : FOR    ${i}    ${option}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${L3VPN_RT_CHECK}
-    \    ${keyword_name}=    BuiltIn.Set_Variable    Get_Update_Message_And_Compare_With_Hex_BgpRpcClient${i}
-    \    BuiltIn.Run_Keyword    ${keyword_name}    ${announce_hex}    ${option}
+    FOR    ${i}    ${option}    IN ZIP    ${ODL_IP_INDICES_ALL}    ${L3VPN_RT_CHECK}
+        ${keyword_name}=    BuiltIn.Set_Variable    Get_Update_Message_And_Compare_With_Hex_BgpRpcClient${i}
+        BuiltIn.Run_Keyword    ${keyword_name}    ${announce_hex}    ${option}
+    END
 
 Verify_Reported_Data
     [Arguments]    ${url}    ${exprspfile}
@@ -238,8 +245,7 @@ Verify_Reported_Data
 
 Verify_Empty_Reported_Data
     [Documentation]    Verify empty data response
-    CompareStream.Run_Keyword_If_At_Most_Fluorine    TemplatedRequests.Get_As_Json_Templated    ${RT_CONSTRAIN_DIR}${/}empty_l3vpn    session=${CONFIG_SESSION}    mapping=${ADJ_RIB_OUT}    verify=True
-    CompareStream.Run_Keyword_If_At_Least_Neon    Verify_Empty_Data_Neon
+    TemplatedRequests.Get_As_Json_Templated    ${RT_CONSTRAIN_DIR}${/}empty_l3vpn    session=${CONFIG_SESSION}    mapping=${ADJ_RIB_OUT}    verify=True
 
 Verify_Empty_Data_Neon
     [Documentation]    Verify empty data on neon