go.ligato.io/vpp-agent/v3@v3.5.0/tests/robot/suites/crud/vxlan_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/interface_generic.robot
    19  
    20  Force Tags        crud     IPv4
    21  Suite Setup       Testsuite Setup
    22  Suite Teardown    Testsuite Teardown
    23  Test Setup        TestSetup
    24  Test Teardown     TestTeardown
    25  
    26  *** Variables ***
    27  ${VARIABLES}=          common
    28  ${ENV}=                common
    29  
    30  ${WAIT_TIMEOUT}=     20s
    31  ${SYNC_SLEEP}=       3s
    32  
    33  *** Test Cases ***
    34  Configure Environment
    35      [Tags]    setup
    36      Configure Environment 1
    37      Sleep    10s
    38  
    39  
    40  Show Interfaces Before Setup
    41      vpp_term: Show Interfaces    agent_vpp_1
    42  
    43  Add First VXLan Interface
    44      VXLan Tunnel Not Exists    node=agent_vpp_1    src=192.168.1.1    dst=192.168.1.2    vni=15
    45      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan1    src=192.168.1.1    dst=192.168.1.2    vni=15
    46      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Created    node=agent_vpp_1    src=192.168.1.1    dst=192.168.1.2    vni=15
    47      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1    enabled=1    src=192.168.1.1    dst=192.168.1.2    vni=15
    48  
    49  Add Second VXLan Interface
    50      VXLan Tunnel Not Exists    node=agent_vpp_1    src=192.168.2.1    dst=192.168.2.2    vni=25
    51      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan2    src=192.168.2.1    dst=192.168.2.2    vni=25
    52      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Created    node=agent_vpp_1    src=192.168.2.1    dst=192.168.2.2    vni=25
    53      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan2    enabled=1    src=192.168.2.1    dst=192.168.2.2    vni=25
    54  
    55  Check That First VXLan Interface Is Still Configured
    56      vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1    enabled=1    src=192.168.1.1    dst=192.168.1.2    vni=15
    57  
    58  Update First VXLan Interface
    59      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan1    src=192.168.1.10    dst=192.168.1.20    vni=150
    60      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Deleted    node=agent_vpp_1    src=192.168.1.1    dst=192.168.1.2    vni=15
    61      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Created    node=agent_vpp_1    src=192.168.1.10    dst=192.168.1.20    vni=150
    62      vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1    enabled=1    src=192.168.1.10    dst=192.168.1.20    vni=150
    63  
    64  Check That Second VXLan Interface Is Not Changed
    65      vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan2    enabled=1    src=192.168.2.1    dst=192.168.2.2    vni=25
    66  
    67  Delete First VXLan Interface
    68      Delete VPP Interface    node=agent_vpp_1    name=vpp1_vxlan1
    69      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Deleted    node=agent_vpp_1    src=192.168.1.10    dst=192.168.1.20    vni=150
    70  
    71  Check That Second VXLan Interface Is Still Configured
    72      vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan2    enabled=1    src=192.168.2.1    dst=192.168.2.2    vni=25
    73  
    74  Show Interfaces And Other Objects After Setup
    75      vpp_term: Show Interfaces    agent_vpp_1
    76      vpp_term: Show Interfaces    agent_vpp_2
    77      Write To Machine    agent_vpp_1_term    show int addr
    78      Write To Machine    agent_vpp_2_term    show int addr
    79      Write To Machine    agent_vpp_1_term    show h
    80      Write To Machine    agent_vpp_2_term    show h
    81      Write To Machine    agent_vpp_1_term    show br
    82      Write To Machine    agent_vpp_2_term    show br
    83      Write To Machine    agent_vpp_1_term    show br 1 detail
    84      Write To Machine    agent_vpp_2_term    show br 1 detail
    85      Write To Machine    agent_vpp_1_term    show vxlan tunnel
    86      Write To Machine    agent_vpp_2_term    show vxlan tunnel
    87      Write To Machine    agent_vpp_1_term    show err
    88      Write To Machine    agent_vpp_2_term    show err
    89      vpp_api: Interfaces Dump    agent_vpp_1
    90      vpp_api: Interfaces Dump    agent_vpp_2
    91      Execute In Container    agent_vpp_1    ip a
    92      Execute In Container    agent_vpp_2    ip a
    93  
    94  *** Keywords ***
    95  TestSetup
    96      Make Datastore Snapshots    ${TEST_NAME}_test_setup
    97  
    98  TestTeardown
    99      Make Datastore Snapshots    ${TEST_NAME}_test_teardown
   100