-
-| Set up functional test
-| | [Documentation] | Common test setup for functional tests.
-| | ...
-| | Configure all DUTs before test
-| | Save VPP PIDs
-| | Configure all TGs for traffic script
-| | Update All Interface Data On All Nodes | ${nodes}
-| | Reset VAT History On All DUTs | ${nodes}
-
-| Tear down functional test
-| | [Documentation] | Common test teardown for functional tests.
-| | ...
-| | Remove All Added Ports On All DUTs From Topology | ${nodes}
-| | Show Packet Trace on All DUTs | ${nodes}
-| | Show VAT History On All DUTs | ${nodes}
-| | Vpp Show Errors On All DUTs | ${nodes}
-| | Verify VPP PID in Teardown
-
-| Set up VPP device test
-# TODO: Generalize this KW if it will not diverge from Functional derivate too
-# much
-| | [Documentation] | Common test setup for vpp-device tests.
-| | ...
-| | Configure all DUTs before test
-| | Save VPP PIDs
-| | Configure all TGs for traffic script
-| | Update All Interface Data On All Nodes | ${nodes} | skip_tg_udev=${True}
-| | Reset VAT History On All DUTs | ${nodes}
-
-| Tear down VPP device test
-# TODO: Generalize this KW if it will not diverge from Functional derivate too
-# much
-| | [Documentation] | Common test teardown for vpp-device tests.
-| | ...
-| | Remove All Added Ports On All DUTs From Topology | ${nodes}
-| | Show Packet Trace on All DUTs | ${nodes}
-| | Show VAT History On All DUTs | ${nodes}
-| | Vpp Show Errors On All DUTs | ${nodes}
-| | Verify VPP PID in Teardown
-
-| Tear down LISP functional test
-| | [Documentation] | Common test teardown for functional tests with LISP.
-| | ...
-| | Remove All Added Ports On All DUTs From Topology | ${nodes}
-| | Show Packet Trace on All DUTs | ${nodes}
-| | Show VAT History On All DUTs | ${nodes}
-| | Show Vpp Settings | ${nodes['DUT1']}
-| | Show Vpp Settings | ${nodes['DUT2']}
-| | Vpp Show Errors On All DUTs | ${nodes}
-| | Verify VPP PID in Teardown
-
-| Tear down LISP functional test with QEMU
-| | [Documentation] | Common test teardown for functional tests with LISP and\
-| | ... | QEMU.
-| | ...
-| | ... | *Arguments:*
-| | ... | - vm_node - VM to stop. Type: string
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Tear down LISP functional test with QEMU \| ${vm_node} \|
-| | ...
-| | [Arguments] | ${vm_node}
-| | ...
-| | Remove All Added Ports On All DUTs From Topology | ${nodes}
-| | Show Packet Trace on All DUTs | ${nodes}
-| | Show VAT History On All DUTs | ${nodes}
-| | Show Vpp Settings | ${nodes['DUT1']}
-| | Show Vpp Settings | ${nodes['DUT2']}
-| | Vpp Show Errors On All DUTs | ${nodes}
-| | Stop and clear QEMU | ${nodes['DUT1']} | ${vm_node}
-| | Verify VPP PID in Teardown
-
-| Set up TAP functional test
-| | [Documentation] | Common test setup for functional tests with TAP.
-| | ...
-| | Set up functional test
-| | Clean Up Namespaces | ${nodes['DUT1']}
-
-| Set up functional test with containers
-| | [Documentation]
-| | ... | Common test setup for functional tests with containers.
-| | ...
-| | ... | *Arguments:*
-| | ... | - chains: Total number of chains (Optional). Type: integer, default
-| | ... | value: ${1}
-| | ... | - nodeness: Total number of nodes per chain (Optional). Type: integer,
-| | ... | default value: ${1}
-| | ...
-| | ... | _NOTE:_ This KW sets following test case variables:
-| | ... | - tmp_volume - Docker volume mounted as /tmp directory on DUT1.
-| | ... | - dcr_uuid - UUID string (including prefix - underscore character) of
-| | ... | DUT1 /tmp volume.
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Set up functional test with containers \| 1 \| 1 \|
-| | ...
-| | [Arguments] | ${chains}=${1} | ${nodeness}=${1}
-| | ...
-| | Set Test Variable | @{container_groups} | @{EMPTY}
-| | Set Test Variable | ${container_group} | CNF
-| | Import Library | resources.libraries.python.ContainerUtils.ContainerManager
-| | ... | engine=${container_engine} | WITH NAME | ${container_group}
-| | ...
-| | ${tmp_volume}= | Get Environment Variable | CSIT_DUT1_VOL
-| | ${dcr_uuid}= | Remove String | ${tmp_volume} | DUT1_VOL
-| | Set Test Variable | ${tmp_volume}
-| | Set Test Variable | ${dcr_uuid}
-| | ...
-| | Construct chains of containers on all DUTs | ${chains} | ${nodeness}
-| | ... | set_nf_cpus=${False}
-| | Acquire all '${container_group}' containers
-| | Create all '${container_group}' containers
-| | Configure VPP in all '${container_group}' containers
-| | Stop VPP service on all DUTs | ${nodes}
-| | Install VPP in all '${container_group}' containers
-| | Start VPP service on all DUTs | ${nodes}
-| | Append To List | ${container_groups} | ${container_group}
-
-| Tear down TAP functional test
-| | [Documentation] | Common test teardown for functional tests with TAP.
-| | ...
-| | Tear down functional test
-| | Clean Up Namespaces | ${nodes['DUT1']}
-
-| Tear down TAP functional test with Linux bridge
-| | [Documentation] | Common test teardown for functional tests with TAP and
-| | ... | a Linux bridge.
-| | ...
-| | ... | *Arguments:*
-| | ... | - bid_TAP - Bridge name. Type: string
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Tear down TAP functional test with Linux bridge \| ${bid_TAP} \|
-| | ...
-| | [Arguments] | ${bid_TAP}
-| | ...
-| | Tear down functional test
-| | Linux Del Bridge | ${nodes['DUT1']} | ${bid_TAP}
-| | Clean Up Namespaces | ${nodes['DUT1']}
-
-| Tear down FDS functional test
-| | [Documentation] | Common test teardown for FDS functional tests.
-| | ...
-| | ... | *Arguments:*
-| | ... | - dut1_node - Node Nr.1 where to clean qemu. Type: dictionary
-| | ... | - qemu_node1 - VM Nr.1 node info dictionary. Type: string
-| | ... | - dut2_node - Node Nr.2 where to clean qemu. Type: dictionary
-| | ... | - qemu_node2 - VM Nr.2 node info dictionary. Type: string
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Tear down FDS functional test \| ${dut1_node} \| ${qemu_node1}\
-| | ... | \| ${dut2_node} \| ${qemu_node2} \|
-| | ...
-| | [Arguments] | ${dut1_node} | ${qemu_node1} | ${dut2_node}
-| | ... | ${qemu_node2}
-| | ...
-| | Tear down functional test
-| | Tear down QEMU | ${dut1_node} | ${qemu_node1} | qemu_node1
-| | Tear down QEMU | ${dut2_node} | ${qemu_node2} | qemu_node2
-
-| Tear down functional test with container
-| | [Documentation]
-| | ... | Common test teardown for functional tests which uses containers.
-| | ...
-| | :FOR | ${container_group} | IN | @{container_groups}
-| | | Destroy all '${container_group}' containers
-
-| Stop VPP Service on DUT
-| | [Documentation] | Stop the VPP service on the specified node.
-| | ...
-| | ... | *Arguments:*
-| | ... | - node - information about a DUT node. Type: dictionary
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Stop VPP Service on DUT \| ${nodes['DUT1']} \|
-| | ...
-| | [Arguments] | ${node}
-| | Stop VPP Service | ${node}
-
-| Start VPP Service on DUT
-| | [Documentation] | Start the VPP service on the specified node.
-| | ...
-| | ... | *Arguments:*
-| | ... | - node - information about a DUT node. Type: dictionary
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Start VPP Service on DUT \| ${nodes['DUT1']} \|
-| | ...
-| | [Arguments] | ${node}
-| | Start VPP Service | ${node}