go.ligato.io/vpp-agent/v3@v3.5.0/tests/robot/suites/crud/arp_crud.robot (about)

     1  *** Settings ***
     2  Library      OperatingSystem
     3  #Library      RequestsLibrary
     4  #Library      SSHLibrary      timeout=60s
     5  #Library      String
     6  
     7  Resource     ../../variables/${VARIABLES}_variables.robot
     8  
     9  Resource     ../../libraries/vpp_api.robot
    10  Resource     ../../libraries/vpp_term.robot
    11  Resource     ../../libraries/docker.robot
    12  Resource     ../../libraries/setup-teardown.robot
    13  Resource     ../../libraries/configurations.robot
    14  Resource     ../../libraries/etcdctl.robot
    15  Resource     ../../libraries/linux.robot
    16  
    17  Resource     ../../libraries/interface/vxlan.robot
    18  Resource     ../../libraries/interface/loopback.robot
    19  Resource     ../../libraries/interface/afpacket.robot
    20  Resource     ../../libraries/interface/interface_generic.robot
    21  
    22  Force Tags        crud     IPv4
    23  Suite Setup       Testsuite Setup
    24  Suite Teardown    Testsuite Teardown
    25  Test Setup        TestSetup
    26  Test Teardown     TestTeardown
    27  
    28  *** Variables ***
    29  ${VARIABLES}=            common
    30  ${ENV}=                  common
    31  ${WAIT_TIMEOUT}=         20s
    32  ${SYNC_SLEEP}=           3s
    33  ${VETH1_MAC}=            1a:00:00:11:11:11
    34  ${VETH2_MAC}=            2a:00:00:22:22:22
    35  ${AFP1_MAC}=             a2:01:01:01:01:01
    36  ${VETH1_IP}=             10.10.1.1
    37  ${VETH2_IP}=             10.10.1.2
    38  ${PREFIX}=               24
    39  ${MEMIF_IP}=             192.168.1.1
    40  ${VXLAN_IP_SRC}=         192.168.1.1
    41  ${VXLAN_IP_DST}=         192.168.1.2
    42  ${LOOPBACK_IP}=          20.20.1.1
    43  ${TAP_IP}=               30.30.1.1
    44  ${ARP1_IP}=              155.155.155.155
    45  ${ARP2_IP}=              155.155.155.150
    46  ${ARP1_MAC}=             32:51:51:51:51:51
    47  ${ARP2_MAC}=             32:51:51:51:51:52
    48  ${ARP1_MAC_MODIFIED}=    32:51:51:51:51:53
    49  
    50  *** Test Cases ***
    51  Configure Environment
    52      [Tags]    setup
    53      Configure Environment 1
    54  
    55  Show Interfaces Before Setup
    56      vpp_term: Show Interfaces    agent_vpp_1
    57  
    58  
    59  Add Veth1 Interface Pair
    60      linux: Interface Not Exists    node=agent_vpp_1    mac=${VETH1_MAC}
    61      linux: Interface Not Exists    node=agent_vpp_1    mac=${VETH2_MAC}
    62      Put Veth Interface With IP    node=agent_vpp_1    name=vpp1_veth1
    63      ...    mac=${VETH1_MAC}    peer=vpp1_veth2    ip=${VETH1_IP}    prefix=${PREFIX}    mtu=1500
    64      Put Veth Interface With IP    node=agent_vpp_1    name=vpp1_veth2
    65      ...    mac=${VETH2_MAC}    peer=vpp1_veth1    ip=${VETH2_IP}    prefix=${PREFIX}    mtu=1500
    66      linux: Interface Is Created    node=agent_vpp_1    mac=${VETH1_MAC}
    67      linux: Interface Is Created    node=agent_vpp_1    mac=${VETH2_MAC}
    68      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
    69      ...    linux: Check Veth Interface State     agent_vpp_1    vpp1_veth1
    70      ...    mac=${VETH1_MAC}    ipv4=${VETH1_IP}/${PREFIX}    mtu=1500    state=up
    71      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
    72      ...    linux: Check Veth Interface State     agent_vpp_1    vpp1_veth2
    73      ...    mac=${VETH2_MAC}    ipv4=${VETH2_IP}/${PREFIX}    mtu=1500    state=up
    74      vpp_term: Show Interface Mode  agent_vpp_1
    75      vpp_term: Show Interface Mode  agent_vpp_2
    76  
    77  Add Memif Interface
    78      Put Memif Interface With IP    node=agent_vpp_1    name=vpp1_memif1
    79      ...    mac=62:61:61:61:61:61    master=true    id=1    ip=${MEMIF_IP}
    80      ...    prefix=${PREFIX}    socket=default.sock
    81      vpp_term: Interface Is Created    node=agent_vpp_1    mac=62:61:61:61:61:61
    82      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
    83      ...    vpp_term: Check Memif Interface State     agent_vpp_1  vpp1_memif1
    84      ...    mac=62:61:61:61:61:61  role=master  id=1  ipv4=${MEMIF_IP}/${PREFIX}
    85      ...    connected=0  enabled=1  socket=${AGENT_VPP_1_MEMIF_SOCKET_FOLDER}/default.sock
    86  
    87  Add VXLan Interface
    88      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan1
    89      ...    src=${VXLAN_IP_SRC}    dst=${VXLAN_IP_DST}    vni=5
    90      VXLan Tunnel Is Created    node=agent_vpp_1    src=${VXLAN_IP_SRC}    dst=${VXLAN_IP_DST}    vni=5
    91      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
    92      ...    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1
    93      ...    enabled=1    src=${VXLAN_IP_SRC}    dst=${VXLAN_IP_DST}    vni=5
    94  
    95  Add Loopback Interface
    96      Put Loopback Interface With IP    node=agent_vpp_1    name=vpp1_loop1
    97      ...    mac=12:21:21:11:11:11    ip=${LOOPBACK_IP}   prefix=${PREFIX}   mtu=1400
    98      vpp_term: Interface Is Created    node=agent_vpp_1    mac=12:21:21:11:11:11
    99      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   100      ...    vpp_api: Check Loopback Interface State    agent_vpp_1    vpp1_loop1
   101      ...    enabled=1     mac=12:21:21:11:11:11    mtu=1400  ipv4=${LOOPBACK_IP}/${PREFIX}
   102  
   103  Add Tap Interface
   104      Put TAPv2 Interface With IP    node=agent_vpp_1    name=vpp1_tap1
   105      ...    mac=32:21:21:11:11:11    ip=${TAP_IP}   prefix=${PREFIX}      host_if_name=linux_vpp1_tap1
   106      vpp_term: Interface Is Created    node=agent_vpp_1    mac=32:21:21:11:11:11
   107      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   108      ...    vpp_term: Check TAP interface State    agent_vpp_1    vpp1_tap1
   109      ...    mac=32:21:21:11:11:11    ipv4=${TAP_IP}/${PREFIX}    state=up
   110  
   111  ADD Afpacket Interface
   112      Put Afpacket Interface    node=agent_vpp_1    name=vpp1_afpacket1
   113      ...    mac=a2:a1:a1:a1:a1:a1    host_int=vpp1_veth2
   114      vpp_term: Interface Is Created    node=agent_vpp_1    mac=a2:a1:a1:a1:a1:a1
   115      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   116      ...    vpp_api: Check Afpacket Interface State    agent_vpp_1    vpp1_afpacket1
   117      ...    enabled=1    mac=a2:a1:a1:a1:a1:a1
   118  
   119  Check Stuff
   120      Show Interfaces And Other Objects
   121  
   122  Add ARPs
   123      Put ARP          agent_vpp_1    vpp1_memif1       ${ARP1_IP}    ${ARP1_MAC}    false
   124      Put ARP          agent_vpp_1    vpp1_memif1       ${ARP2_IP}    ${ARP2_MAC}    false
   125      Put Linux ARP    agent_vpp_1    vpp1_veth1        ${ARP1_IP}    ${ARP1_MAC}
   126      Put Linux ARP    agent_vpp_1    vpp1_veth1        ${ARP2_IP}    ${ARP2_MAC}
   127      Put Linux ARP    agent_vpp_1    vpp1_veth2        ${ARP1_IP}    ${ARP1_MAC}
   128      Put Linux ARP    agent_vpp_1    vpp1_veth2        ${ARP2_IP}    ${ARP2_MAC}
   129      Put ARP          agent_vpp_1    vpp1_vxlan1       ${ARP1_IP}    ${ARP1_MAC}    false
   130      Put ARP          agent_vpp_1    vpp1_vxlan1       ${ARP2_IP}    ${ARP2_MAC}    false
   131      Put ARP          agent_vpp_1    vpp1_loop1        ${ARP1_IP}    ${ARP1_MAC}    false
   132      Put ARP          agent_vpp_1    vpp1_loop1        ${ARP2_IP}    ${ARP2_MAC}    false
   133      Put ARP          agent_vpp_1    vpp1_tap1         ${ARP1_IP}    ${ARP1_MAC}    false
   134      Put ARP          agent_vpp_1    vpp1_tap1         ${ARP2_IP}    ${ARP2_MAC}    false
   135      Put ARP          agent_vpp_1    vpp1_afpacket1    ${ARP1_IP}    ${ARP1_MAC}    false
   136      Put ARP          agent_vpp_1    vpp1_afpacket1    ${ARP2_IP}    ${ARP2_MAC}    false
   137      Sleep            ${SYNC_SLEEP}
   138  
   139  Check Memif ARP
   140      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   141      ...    vpp_term: Check ARP   agent_vpp_1     vpp1_memif1
   142      ...    ${ARP1_IP}    ${ARP1_MAC}    True
   143      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   144      ...    vpp_term: Check ARP   agent_vpp_1     vpp1_memif1
   145      ...    ${ARP2_IP}    ${ARP2_MAC}    True
   146  
   147  Check Veth1 ARP
   148      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   149      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   150      ...    ${ARP1_IP}    ${ARP1_MAC}    True
   151      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   152      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   153      ...    ${ARP2_IP}    ${ARP2_MAC}    True
   154  
   155  Check Veth2 ARP
   156      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   157      ...    linux: Check ARP    agent_vpp_1    vpp1_veth2
   158      ...    ${ARP1_IP}    ${ARP1_MAC}    True
   159      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   160      ...    linux: Check ARP    agent_vpp_1    vpp1_veth2
   161      ...    ${ARP2_IP}    ${ARP2_MAC}    True
   162  
   163  Check VXLan ARP
   164      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   165      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_vxlan1
   166      ...    ${ARP1_IP}    ${ARP1_MAC}    True
   167      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   168      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_vxlan1
   169      ...    ${ARP2_IP}    ${ARP2_MAC}    True
   170  
   171  Check Loopback ARP
   172      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   173      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_loop1
   174      ...    ${ARP1_IP}   ${ARP1_MAC}    True
   175      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   176      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_loop1
   177      ...    ${ARP2_IP}   ${ARP2_MAC}    True
   178  
   179  Check TAP ARP
   180      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   181      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_tap1
   182      ...    ${ARP1_IP}   ${ARP1_MAC}    True
   183      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   184      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_tap1
   185      ...    ${ARP2_IP}   ${ARP2_MAC}    True
   186  
   187  Check Afpacket ARP
   188      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   189      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_afpacket1
   190      ...    ${ARP1_IP}   ${ARP1_MAC}    True
   191      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   192      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_afpacket1
   193      ...    ${ARP2_IP}   ${ARP2_MAC}    True
   194  
   195  Modify ARPs
   196      Put ARP          agent_vpp_1    vpp1_memif1        ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    false
   197      Put Linux ARP    agent_vpp_1    vpp1_veth1         ${ARP1_IP}    ${ARP1_MAC_MODIFIED}
   198      Put Linux ARP    agent_vpp_1    vpp1_veth2         ${ARP1_IP}    ${ARP1_MAC_MODIFIED}
   199      Put ARP          agent_vpp_1    vpp1_vxlan1        ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    false
   200      Put ARP          agent_vpp_1    vpp1_loop1         ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    false
   201      Put ARP          agent_vpp_1    vpp1_tap1          ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    false
   202      Put ARP          agent_vpp_1    host-vpp1_veth2    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    false
   203      Put ARP          agent_vpp_1    vpp1_afpacket1     ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    false
   204      Sleep            ${SYNC_SLEEP}
   205  
   206  Check Memif ARP After Modify
   207      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   208      ...    vpp_term: Check ARP   agent_vpp_1     vpp1_memif1
   209      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   210      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   211      ...    vpp_term: Check ARP   agent_vpp_1     vpp1_memif1
   212      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   213  
   214  Check Veth1 ARP After Modify
   215      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   216      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   217      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   218      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   219      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   220      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   221  
   222  Check Veth2 ARP After Modify
   223      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   224      ...    linux: Check ARP    agent_vpp_1    vpp1_veth2
   225      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   226      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   227      ...    linux: Check ARP    agent_vpp_1    vpp1_veth2
   228      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   229  
   230  Check VXLan ARP After Modify
   231      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   232      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_vxlan1
   233      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   234      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   235      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   236      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   237  
   238  Check Loopback ARP After Modify
   239      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   240      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_loop1
   241      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   242      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   243      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   244      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   245  
   246  Check TAP ARP After Modify
   247      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   248      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_tap1
   249      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   250      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   251      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   252      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   253  
   254  Check Afpacket ARP After Modify
   255      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   256      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_afpacket1
   257      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   258      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   259      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   260      ...    ${ARP1_IP}    ${ARP1_MAC}    False
   261  
   262  Delete ARPs
   263      Delete ARP          agent_vpp_1    vpp1_memif1        ${ARP2_IP}
   264      Delete Linux ARP    agent_vpp_1    vpp1_veth1         ${ARP2_IP}
   265      Delete Linux ARP    agent_vpp_1    vpp1_veth2         ${ARP2_IP}
   266      Delete ARP          agent_vpp_1    vpp1_vxlan1        ${ARP2_IP}
   267      Delete ARP          agent_vpp_1    vpp1_loop1         ${ARP2_IP}
   268      Delete ARP          agent_vpp_1    vpp1_tap1          ${ARP2_IP}
   269      Delete ARP          agent_vpp_1    host-vpp1_veth2    ${ARP2_IP}
   270      Delete ARP          agent_vpp_1    vpp1_afpacket1     ${ARP2_IP}
   271      vpp_term:Show ARP   agent_vpp_1
   272      Execute In Container    agent_vpp_1    ip neigh
   273      Sleep    ${SYNC_SLEEP}
   274  
   275  Check Memif ARP After Delete
   276      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   277      ...    vpp_term: Check ARP   agent_vpp_1     vpp1_memif1
   278      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   279      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   280      ...    vpp_term: Check ARP   agent_vpp_1     vpp1_memif1
   281      ...    ${ARP2_IP}    ${ARP2_MAC}    False
   282  
   283  Check Veth1 ARP After Delete
   284      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   285      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   286      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   287      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   288      ...    linux: Check ARP    agent_vpp_1    vpp1_veth1
   289      ...    ${ARP1_IP}    ${ARP2_MAC}    False
   290  
   291  Check Veth2 ARP After Delete
   292      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   293      ...    linux: Check ARP    agent_vpp_1    vpp1_veth2
   294      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   295      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   296      ...    linux: Check ARP    agent_vpp_1    vpp1_veth2
   297      ...    ${ARP1_IP}    ${ARP2_MAC}    False
   298  
   299  Check VXLan ARP After Delete
   300      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   301      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_vxlan1
   302      ...    ${ARP1_IP}    ${ARP1_MAC_MODIFIED}    True
   303      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   304      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_vxlan1
   305      ...    ${ARP2_IP}    ${ARP2_MAC}    False
   306  
   307  Check Loopback ARP After Delete
   308      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   309      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_loop1
   310      ...    ${ARP1_IP}   ${ARP1_MAC_MODIFIED}    True
   311      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   312      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_loop1
   313      ...    ${ARP2_IP}   ${ARP2_MAC}    False
   314  
   315  Check TAP ARP After Delete
   316      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   317      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_tap1
   318      ...    ${ARP1_IP}   ${ARP1_MAC_MODIFIED}    True
   319      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   320      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_tap1
   321      ...    ${ARP2_IP}   ${ARP2_MAC}    False
   322  
   323  Check Afpacket ARP After Delete
   324      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   325      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_afpacket1
   326      ...    ${ARP1_IP}   ${ARP1_MAC_MODIFIED}    True
   327      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}
   328      ...    vpp_term: Check ARP    agent_vpp_1    vpp1_afpacket1
   329      ...    ${ARP2_IP}   ${ARP2_MAC}    False
   330  
   331  
   332  *** Keywords ***
   333  Show Interfaces And Other Objects
   334      vpp_term: Show Interfaces    agent_vpp_1
   335      Write To Machine    agent_vpp_1_term    show int addr
   336      Write To Machine    agent_vpp_1_term    show h
   337      Write To Machine    agent_vpp_1_term    show br
   338      Write To Machine    agent_vpp_1_term    show err
   339      vpp_api: Interfaces Dump    agent_vpp_1
   340      Execute In Container    agent_vpp_1    ip a
   341      Make Datastore Snapshots    before_check stuff
   342  
   343  
   344  TestSetup
   345      Make Datastore Snapshots    ${TEST_NAME}_test_setup
   346  
   347  TestTeardown
   348      Make Datastore Snapshots    ${TEST_NAME}_test_teardown