Fix flowspec empty uri
[integration/test.git] / csit / suites / bgpcep / bgpflowspec / 010_bgp_flowspec.robot
index adba040d3bbe349f39dc0ac4df0d1caadeca1f38..f09cdf53282536a1ec972a672258af519e86498f 100644 (file)
@@ -17,21 +17,19 @@ Resource          ../../../libraries/TemplatedRequests.robot
 Resource          ../../../variables/Variables.robot
 
 *** Variables ***
-${BGP_VARIABLES_FOLDER}    ${CURDIR}/../../../variables/bgpflowspec
+${BGP_VARIABLES_FOLDER}    ${CURDIR}/../../../variables/bgpflowspec/
 ${CMD}            env exabgp.tcp.port=1790 exabgp --debug
 ${HOLDTIME}       180
-${OLD_EMPTY}      {"bgp-flowspec:flowspec-routes": {}}
-${NEW_EMPTY}      {}
 ${OLD_AS_PATH}    \n"as-path": {},
 ${NEW_AS_PATH}    ${EMPTY}
+${EXP0}           {"bgp-flowspec:flowspec-routes": {}}
 ${CFG1}           bgp-flowspec.cfg
-${EXP1}           bgp-flowspec.json
+${EXP1}           bgp_flowspec
 ${CFG2}           bgp-flowspec-redirect.cfg
-${EXP2}           bgp-flowspec-redirect.json
+${EXP2}           bgp_flowspec_redirect
 ${FLOWSPEC_URL}    /restconf/operational/bgp-rib:bgp-rib/rib/example-bgp-rib/loc-rib/tables/bgp-types:ipv4-address-family/bgp-flowspec:flowspec-subsequent-address-family/bgp-flowspec:flowspec-routes
 ${CONFIG_SESSION}    session
 ${DEVICE_NAME}    controller-config
-${BGP_PEER_NAME}    example-bgp-peer
 ${RIB_INSTANCE}    example-bgp-rib
 ${PROTOCOL_OPENCONFIG}    ${RIB_INSTANCE}
 @{EMPTY_LIST}
@@ -44,8 +42,8 @@ Check_For_Empty_Topology_Before_Talking
 
 Reconfigure_ODL_To_Accept_Connection
     [Documentation]    Configure BGP peer module with initiate-connection set to false.
-    &{mapping}    BuiltIn.Create_Dictionary    DEVICE_NAME=${DEVICE_NAME}    NAME=${BGP_PEER_NAME}    IP=${TOOLS_SYSTEM_IP}    HOLDTIME=${HOLDTIME}    PEER_PORT=${BGP_TOOL_PORT}
-    ...    INITIATE=false    RIB_INSTANCE_NAME=${RIB_INSTANCE}    BGP_RIB_OPENCONFIG=${PROTOCOL_OPENCONFIG}    PASSIVE_MODE=true
+    &{mapping}    BuiltIn.Create_Dictionary    IP=${TOOLS_SYSTEM_IP}    HOLDTIME=${HOLDTIME}    PEER_PORT=${BGP_TOOL_PORT}    INITIATE=false    BGP_RIB_OPENCONFIG=${PROTOCOL_OPENCONFIG}
+    ...    PASSIVE_MODE=true
     TemplatedRequests.Put_As_Xml_Templated    ${BGP_VARIABLES_FOLDER}/bgp_peer    mapping=${mapping}    session=${CONFIG_SESSION}
 
 FlowSpec_Test_1
@@ -62,7 +60,7 @@ FlowSpec_Test_2
 
 Deconfigure_ODL_To_Accept_Connection
     [Documentation]    Deconfigure BGP peer.
-    &{mapping}    BuiltIn.Create_Dictionary    DEVICE_NAME=${DEVICE_NAME}    NAME=${BGP_PEER_NAME}    IP=${TOOLS_SYSTEM_IP}    BGP_RIB_OPENCONFIG=${PROTOCOL_OPENCONFIG}
+    &{mapping}    BuiltIn.Create_Dictionary    IP=${TOOLS_SYSTEM_IP}    BGP_RIB_OPENCONFIG=${PROTOCOL_OPENCONFIG}
     TemplatedRequests.Delete_Templated    ${BGP_VARIABLES_FOLDER}/bgp_peer    mapping=${mapping}    session=${CONFIG_SESSION}
 
 *** Keywords ***
@@ -74,8 +72,6 @@ Start_Suite
     SSHKeywords.Virtual_Env_Install_Package    exabgp==3.4.16
     RequestsLibrary.Create_Session    ${CONFIG_SESSION}    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}
     Upload_Config_Files    ${BGP_VARIABLES_FOLDER}
-    ${EXP0} =    CompareStream.Set_Variable_If_At_Least_Neon    ${NEW_EMPTY}    ${OLD_EMPTY}
-    BuiltIn.Set_Suite_Variable    ${EXP0}
     ${AS_PATH} =    CompareStream.Set_Variable_If_At_Least_Neon    ${NEW_AS_PATH}    ${OLD_AS_PATH}
     BuiltIn.Set_Suite_Variable    ${AS_PATH}
 
@@ -102,13 +98,20 @@ Setup_Testcase
 
 Verify_Empty_Flowspec_Data
     [Documentation]    Verify expected response.
-    ${rsp} =    RequestsLibrary.Get_Request    ${CONFIG_SESSION}    ${FLOWSPEC_URL}
-    TemplatedRequests.Normalize_Jsons_With_Bits_And_Compare    ${EXP0}    ${rsp.content}    keys_with_bits=${EMPTY_LIST}
+    CompareStream.Run_Keyword_If_At_Most_Fluorine    Normalize_And_Compare
+    CompareStream.Run_Keyword_If_At_Least_Neon    Verify_Empty_Flowspec_Data_Neon
 
 Verify_Flowspec_Data
-    [Arguments]    ${exprspfile}
+    [Arguments]    ${exprspdir}
     [Documentation]    Verify expected response
     &{mapping}    BuiltIn.Create_Dictionary    AS_PATH=${AS_PATH}
-    ${expected_rsp} =    TemplatedRequests.Resolve_Text_From_Template_File    ${BGP_VARIABLES_FOLDER}    ${exprspfile}    mapping=${mapping}
+    TemplatedRequests.Get_As_Json_Templated    ${BGP_VARIABLES_FOLDER}${/}${exprspdir}    session=${CONFIG_SESSION}    mapping=${mapping}    verify=True
+
+Normalize_And_Compare
+    [Documentation]    Verify empty flowspec data
     ${rsp} =    RequestsLibrary.Get_Request    ${CONFIG_SESSION}    ${FLOWSPEC_URL}
-    TemplatedRequests.Normalize_Jsons_With_Bits_And_Compare    ${expected_rsp}    ${rsp.content}    keys_with_bits=${EMPTY_LIST}
+    TemplatedRequests.Normalize_Jsons_With_Bits_And_Compare    ${EXP0}    ${rsp.content}    keys_with_bits=${EMPTY_LIST}
+
+Verify_Empty_Flowspec_Data_Neon
+    [Documentation]    Verify empty flowspec data on neon
+    TemplatedRequests.Get_As_Json_Templated    ${BGP_VARIABLES_FOLDER}${/}empty_route    session=${CONFIG_SESSION}    verify=True