go.ligato.io/vpp-agent/v3@v3.5.0/tests/robot/suites/crud/physical_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/all_libs.robot
    10  
    11  Force Tags        crud     IPv4    ExpectedFailure
    12  Suite Setup       Testsuite Setup
    13  Suite Teardown    Testsuite Teardown
    14  Test Setup        TestSetup
    15  Test Teardown     TestTeardown
    16  
    17  *** Variables ***
    18  ${VARIABLES}=          common
    19  ${ENV}=                common
    20  ${WAIT_TIMEOUT}=     20s
    21  ${SYNC_SLEEP}=       3s
    22  
    23  *** Test Cases ***
    24  Configure Environment
    25      [Tags]    setup
    26      ${phys_ints}=    Create List    1    2
    27      Add Agent VPP Node With Physical Int    agent_vpp_1    ${phys_ints}
    28  
    29  Show Interfaces Before Setup
    30      vpp_term: Show Interfaces    agent_vpp_1
    31  
    32  Check That Physical Interfaces Exists And Are Not Configured
    33  # int 1
    34      vpp_term: Interface Is Down    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_1_VPP_NAME}
    35      ${ipv4_list}=     vpp_term: Get Interface IPs    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_1_VPP_NAME}
    36      Lists Should Be Equal    ${ipv4_list}    ${EMPTY}
    37  # int 2
    38      vpp_term: Interface Is Down    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_2_VPP_NAME}
    39      ${ipv4_list}=     vpp_term: Get Interface IPs    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_2_VPP_NAME}
    40      Lists Should Be Equal    ${ipv4_list}    ${EMPTY}
    41  
    42  Add Physical1 Interface
    43      Put Physical Interface With IP    node=agent_vpp_1    name=${DOCKER_PHYSICAL_INT_1_VPP_NAME}    ip=10.11.1.2    prefix=28    mtu=1500
    44  
    45  Check That Physical1 Interface Is Configured
    46      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_term: Interface Is Enabled    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_1_VPP_NAME}
    47      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vat_term: Check Physical Interface State    agent_vpp_1    ${DOCKER_PHYSICAL_INT_1_VPP_NAME}    enabled=1    mac=${DOCKER_PHYSICAL_INT_1_MAC}    ipv4=10.11.1.2/28    mtu=1500
    48  
    49  Add Physical2 Interface
    50      Put Physical Interface With IP    node=agent_vpp_1    name=${DOCKER_PHYSICAL_INT_2_VPP_NAME}    ip=20.21.2.3    prefix=24    mtu=2500
    51  
    52  Check That Physical2 Interface Is Configured
    53      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_term: Interface Is Enabled    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_2_VPP_NAME}
    54      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vat_term: Check Physical Interface State    agent_vpp_1    ${DOCKER_PHYSICAL_INT_2_VPP_NAME}    enabled=1    mac=${DOCKER_PHYSICAL_INT_2_MAC}    ipv4=20.21.2.3/24    mtu=2500
    55  
    56  Check That Physical1 Interface Is Still Configured
    57      vat_term: Check Physical Interface State    agent_vpp_1    ${DOCKER_PHYSICAL_INT_1_VPP_NAME}    enabled=1    mac=${DOCKER_PHYSICAL_INT_1_MAC}    ipv4=10.11.1.2/28    mtu=1500
    58  
    59  Update Physical1 Interface
    60      Put Physical Interface With IP    node=agent_vpp_1    name=${DOCKER_PHYSICAL_INT_1_VPP_NAME}    ip=30.31.3.3    prefix=26    mtu=1600
    61      vat_term: Check Physical Interface State    agent_vpp_1    ${DOCKER_PHYSICAL_INT_1_VPP_NAME}    enabled=1    mac=${DOCKER_PHYSICAL_INT_1_MAC}    ipv4=30.31.3.3/26    mtu=1600
    62  
    63  Check That Physical2 Interface Is Still Configured
    64      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vat_term: Check Physical Interface State    agent_vpp_1    ${DOCKER_PHYSICAL_INT_2_VPP_NAME}    enabled=1    mac=${DOCKER_PHYSICAL_INT_2_MAC}    ipv4=20.21.2.3/24    mtu=2500
    65  
    66  Delete Physical2 Interface
    67      Delete VPP Interface    node=agent_vpp_1    name=${DOCKER_PHYSICAL_INT_2_VPP_NAME}
    68      vpp_term: Interface Is Disabled    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_2_VPP_NAME}
    69  
    70  Check That Physical2 Interface Is Unconfigured
    71      ${ipv4_list}=     vpp_term: Get Interface IPs    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_2_VPP_NAME}
    72      Lists Should Be Equal    ${ipv4_list}    ${EMPTY}
    73  
    74  Check That Physical1 Interface Is Not Affected By Delete Physical2
    75      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vat_term: Check Physical Interface State    agent_vpp_1    ${DOCKER_PHYSICAL_INT_1_VPP_NAME}    enabled=1    mac=${DOCKER_PHYSICAL_INT_1_MAC}    ipv4=30.31.3.3/26    mtu=1600
    76  
    77  Delete Physical1 interface
    78      Delete VPP Interface    node=agent_vpp_1    name=${DOCKER_PHYSICAL_INT_1_VPP_NAME}
    79      vpp_term: Interface Is Disabled    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_1_VPP_NAME}
    80  
    81  Check That Physical1 Interface Is Unconfigured
    82      ${ipv4_list}=     vpp_term: Get Interface IPs    node=agent_vpp_1    interface=${DOCKER_PHYSICAL_INT_1_VPP_NAME}
    83      Lists Should Be Equal    ${ipv4_list}    ${EMPTY}
    84  
    85  Show Interfaces And Other Objects After Setup
    86      vpp_term: Show Interfaces    agent_vpp_1
    87      Write To Machine    agent_vpp_1_term    show int addr
    88      Write To Machine    agent_vpp_1_term    show h
    89      Write To Machine    agent_vpp_1_term    show br
    90      Write To Machine    agent_vpp_1_term    show br 1 detail
    91      Write To Machine    agent_vpp_1_term    show err
    92      vat_term: Interfaces Dump    agent_vpp_1
    93      Execute In Container    agent_vpp_1    ip a
    94  
    95  
    96  *** Keywords ***
    97  TestSetup
    98      Make Datastore Snapshots    ${TEST_NAME}_test_setup
    99  
   100  TestTeardown
   101      Make Datastore Snapshots    ${TEST_NAME}_test_teardown
   102