diff options
Diffstat (limited to 'tests/func/honeycomb')
6 files changed, 37 insertions, 64 deletions
diff --git a/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot index b50a48f9a1..4dad038fde 100644 --- a/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot @@ -20,10 +20,7 @@ | Resource | resources/libraries/robot/honeycomb/honeycomb.robot | Resource | resources/libraries/robot/honeycomb/access_control_lists.robot | Variables | resources/test_data/honeycomb/acl.py -| Suite Teardown | Run keywords -| ... | Run Keyword If Any Tests Failed -| ... | Restart Honeycomb and VPP | ${node} -| ... | AND | Clear all ACL settings | ${node} +| Suite Teardown | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb access control lists test suite.* | Force Tags | honeycomb_sanity | honeycomb_odl diff --git a/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot index fc5069fee3..1a8d4008b3 100644 --- a/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot @@ -40,7 +40,6 @@ | Resource | resources/libraries/robot/testing_path.robot | Resource | resources/libraries/robot/ipv6.robot | Force Tags | honeycomb_sanity | honeycomb_odl -| Suite Setup | Vpp nodes ra suppress link layer | ${nodes} | Suite Teardown | | ... | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb interface management test suite.* @@ -166,33 +165,35 @@ | | ... | [Ver] Send ICMP packets from TG to DUT, using different sets\ | | ... | of source and destination IP addresses. Receive an ICMP reply\ | | ... | for every packet sent. +| | ... +| | Given Path for 2-node testing is set +| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | When Honeycomb sets interface ipv4 address with prefix -| | ... | ${node} | ${interface} | @{ipv4_address} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address} | | And Honeycomb adds interface ipv4 address -| | ... | ${node} | ${interface} | @{ipv4_address2} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address2} | | And Honeycomb sets interface ipv6 address -| | ... | ${node} | ${interface} | @{ipv6_address} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address} | | And Honeycomb adds interface ipv6 address -| | ... | ${node} | ${interface} | @{ipv6_address2} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address2} | | Then IPv4 address from Honeycomb should be -| | ... | ${node} | ${interface} | @{ipv4_address} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address} | | And IPv4 address from VAT should be -| | ... | ${node} | ${interface} | @{ipv4_address} | ${ipv4_mask} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address} | ${ipv4_mask} | | And IPv6 address from Honeycomb should contain -| | ... | ${node} | ${interface} | @{ipv6_address} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address} | | And IPv6 address from VAT should contain -| | ... | ${node} | ${interface} | @{ipv6_address} -| | When Path for 2-node testing is set -| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} -| | And Honeycomb sets interface state | ${dut_node} | ${interface} | up -| | And Honeycomb adds interface ipv4 neighbor | ${dut_node} | ${interface} +| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address} +| | And Honeycomb sets interface state | ${dut_node} | ${dut_to_tg_if1} | up +| | And Honeycomb adds interface ipv4 neighbor | ${dut_node} | ${dut_to_tg_if1} | | ... | @{ipv4_neighbor} -| | And Honeycomb adds interface ipv4 neighbor | ${dut_node} | ${interface} +| | And Honeycomb adds interface ipv4 neighbor | ${dut_node} | ${dut_to_tg_if1} | | ... | @{ipv4_neighbor2} -| | And Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${interface} +| | And Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${dut_to_tg_if1} | | ... | @{ipv6_neighbor} -| | And Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${interface} +| | And Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${dut_to_tg_if1} | | ... | @{ipv6_neighbor2} +| | And Vpp nodes ra suppress link layer | ${nodes} | | Then Ping and Verify IP address | ${nodes['TG']} | | ... | ${ipv4_neighbor[0]} | ${ipv4_address[0]} | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac} @@ -215,6 +216,8 @@ TC11: Honeycomb fails to configure two IPv4 addresses from the same subnet | | ... | the same subnet onto a single interface. It should not be possible. | | [Teardown] | Honeycomb removes interface ipv4 addresses | ${node} | | ... | ${interface} +| | [Tags] | EXPECTED_FAILING +# VPP API does not configure the second address, but returns success. VPP-649 | | When Honeycomb sets interface ipv4 address with prefix | | ... | ${node} | ${interface} | 192.168.0.1 | ${9} | | Then Honeycomb fails to add interface ipv4 address @@ -226,7 +229,7 @@ TC12: Honeycomb fails to configure two IPv6 addresses from the same subnet | | [Documentation] | Check if Honeycomb can configure two IPv6 addresses in\ | | ... | the same subnet onto a single interface. It should not be possible. | | [Tags] | EXPECTED_FAILING -# Subnet validation on IPv6 not supported. +# VPP API does not configure the second address, but returns success. VPP-649 | | [Teardown] | Honeycomb removes interface ipv6 addresses | ${node} | | ... | ${interface} | | When Honeycomb sets interface ipv6 address diff --git a/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot index ba63cf6dd4..74480baa24 100644 --- a/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot @@ -46,7 +46,6 @@ | Test Teardown | Run Keywords | Show Packet Trace on All DUTs | ${nodes} | ... | AND | Read plugin-ACL configuration from VAT | ${node} | ... | AND | Clear plugin-acl settings | ${node} | ${dut_to_tg_if1} -| Suite Setup | Vpp All ra suppress link layer | ${nodes} | Suite Teardown | ... | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb access control lists test suite for ACL plugin.* @@ -254,8 +253,6 @@ | | ... | [Ver] Send ICMP packets from one TG interface\ | | ... | to the other, using different codes and types. Receive all packets\ | | ... | except those with types and codes in the filtered ranges. -| | [Tags] | EXPECTED_FAILING -# Bug VPP-624, ICMP type/code values are not matched | | [Teardown] | Run Keywords | | ... | Show Packet Trace on All DUTs | ${nodes} | AND | | ... | Read plugin-ACL configuration from VAT | ${node} | AND @@ -294,8 +291,6 @@ | | ... | [Ver] Send ICMPv6 packets from one TG interface\ | | ... | to the other, using different codes and types. Receive all packets\ | | ... | except those with the filtered type and code. -| | [Tags] | EXPECTED_FAILING -# Bug VPP-624, ICMP type/code values are not matched | | [Teardown] | Run Keywords | | ... | Show Packet Trace on All DUTs | ${nodes} | AND | | ... | Read plugin-ACL configuration from VAT | ${node} | AND @@ -336,8 +331,6 @@ | | ... | to VPP interface 2 and receive it from interface 1(this should create\ | | ... | a reflexive "permit" rule) Finally, send the original packet again\ | | ... | and receive it from interface 2. -| | [Tags] | EXPCETED_FAILING -# Bug VPP-633, VPP crashes when any packet hits a reflexive rule | | [Teardown] | Run Keywords | | ... | Show Packet Trace on All DUTs | ${nodes} | AND | | ... | Read plugin-ACL configuration from VAT | ${node} | AND @@ -386,8 +379,6 @@ | | ... | [Ver] Send simple TCP and UDP packets from one TG interface\ | | ... | to the other, using different IPv4 IPs. Receive all packets except\ | | ... | those with IPs in the filtered ranges and UDP protocol payload. -| | [Tags] | EXPECTED_FAILING -# routed interfaces not yet supported by ACL plugin (no Jira id available) | | Given Setup Interface IPs And Routes For IPv4 plugin-acl Test | | ... | l3_ip4 | ${acl_name_l3_ip4} | | When Honeycomb Creates ACL Chain Through ACL plugin @@ -421,8 +412,6 @@ | | ... | [Ver] Send simple TCP and UDP packets from one TG interface\ | | ... | to the other, using different IPv6 IPs. Receive all packets except\ | | ... | those with IPs in the filtered ranges and UDP protocol payload. -| | [Tags] | EXPECTED_FAILING -# routed interfaces not yet supported by ACL plugin (no Jira id available) | | Given Path for 2-node testing is set | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | And Import Variables | resources/test_data/honeycomb/plugin_acl.py @@ -473,8 +462,6 @@ | | ... | [Ver] Send simple TCP and UDP packets from one TG interface\ | | ... | to the other, using different ports. Receive all packets except\ | | ... | those with ports in the filtered ranges. -| | [Tags] | EXPECTED_FAILING -# routed interfaces not yet supported by ACL plugin (no Jira id available) | | Given Setup Interface IPs And Routes For IPv4 plugin-acl Test | | ... | L4 | ${acl_name_l4} | | When Honeycomb Creates ACL Chain Through ACL plugin @@ -509,8 +496,6 @@ | | ... | [Ver] Send simple TCP packets from one TG interface to the other,\ | | ... | using IPs and ports. Receive all packets except those with\ | | ... | both IPs and ports in the filtered ranges. -| | [Tags] | EXPECTED_FAILING -# routed interfaces not yet supported by ACL plugin (no Jira id available) | | Given Setup Interface IPs And Routes For IPv4 plugin-acl Test | | ... | mixed | ${acl_name_mixed} | | When Honeycomb Creates ACL Chain Through ACL plugin @@ -543,9 +528,6 @@ | | ... | [Ver] Send ICMP packets from one TG interface\ | | ... | to the other, using different codes and types. Receive all packets\ | | ... | except those with the filtered type and code. -| | [Tags] | EXPECTED_FAILING -# Bug VPP-624, ICMP type/code values are not matched -# routed interfaces not yet supported by ACL plugin (no Jira id available) | | Given Setup Interface IPs And Routes For IPv4 plugin-acl Test | | ... | icmp | ${acl_name_icmp} | | When Honeycomb Creates ACL Chain Through ACL plugin @@ -562,7 +544,7 @@ | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac} | | ... | ${tg_to_dut_if2} | ${dut_to_tg_if1_mac} | | ... | ${classify_type} | ${icmp_code} -| | And Run Keyword And Expect Error | TCP/UDP Rx timeout +| | And Run Keyword And Expect Error | ICMP echo Rx timeout | | ... | Send ICMP packet with type and code | ${tg_node} | | ... | ${src_ip} | ${dst_ip} | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac} @@ -579,9 +561,6 @@ | | ... | [Ver] Send ICMPv6 packets from one TG interface\ | | ... | to the other, using different codes and types. Receive all packets\ | | ... | except those with the filtered type and code. -| | [Tags] | EXPECTED_FAILING -# Bug VPP-624, ICMP type/code values are not matched -# routed interfaces not yet supported by ACL plugin (no Jira id available) | | Given Path for 2-node testing is set | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | And Import Variables | resources/test_data/honeycomb/plugin_acl.py @@ -615,14 +594,14 @@ | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac} | | ... | ${tg_to_dut_if2} | ${dut_to_tg_if1_mac} | | ... | ${classify_type} | ${icmp_code} -| | And Run Keyword And Expect Error | TCP/UDP Rx timeout +| | And Run Keyword And Expect Error | ICMP echo Rx timeout | | ... | Send ICMP packet with type and code | ${tg_node} | | ... | ${src_ip} | ${dst_ip} | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac} | | ... | ${tg_to_dut_if2} | ${dut_to_tg_if1_mac} | | ... | ${classify_type} | ${classify_code} -| TC15: ACL reflexive IPv4 filtering through plugin-acl node - bridged +| TC15: ACL reflexive IPv4 filtering through plugin-acl node - routed | | [Documentation] | | ... | [Top] TG=DUT1=TG. | | ... | [Enc] Eth-IPv4-TCP. @@ -634,9 +613,6 @@ | | ... | to VPP interface 2 and receive it from interface 1(this should create\ | | ... | a reflexive "permit" rule) Finally, send the original packet again\ | | ... | and receive it from interface 2. -| | [Tags] | EXPECTED_FAILING -# routed interfaces not yet supported by ACL plugin (no Jira id available) -# Bug VPP-633, VPP crashes when any packet hits a reflexive rule | | Given Setup Interface IPs And Routes For IPv4 plugin-acl Test | | ... | reflex | ${acl_name_reflex} | | And Add ARP on DUT diff --git a/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot b/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot index aea7f2d2c8..d850cc94ce 100644 --- a/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot @@ -33,7 +33,7 @@ | Suite Teardown | ... | Run Keyword If Any Tests Failed | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} -| Force Tags | honeycomb_sanity +| Force Tags | honeycomb_sanity | honeycomb_odl | Documentation | *Honeycomb proxyARP management test suite.* *** Test Cases *** diff --git a/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot index 6651cd7fa2..93c842010b 100644 --- a/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot @@ -21,14 +21,12 @@ | Resource | resources/libraries/robot/honeycomb/honeycomb.robot | Resource | resources/libraries/robot/honeycomb/interfaces.robot | Resource | resources/libraries/robot/honeycomb/routing.robot -| Suite Setup | Vpp nodes ra suppress link layer | ${nodes} | Test Setup | Clear Packet Trace on All DUTs | ${nodes} -| Suite Teardown | Run Keyword If Any Tests Failed -| ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| Suite Teardown | Restart Honeycomb And VPP | ${node} | Test Teardown | Honeycomb routing test teardown | ... | ${node} | ${table} | Documentation | *Honeycomb routing test suite.* -| Force Tags | Honeycomb_sanity +| Force Tags | Honeycomb_sanity | honeycomb_odl *** Test Cases *** | TC01: Single hop IPv4 route @@ -169,10 +167,8 @@ | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | Import Variables | resources/test_data/honeycomb/routing.py | | ... | ${nodes['DUT1']} | ipv4 | ${dut_to_tg_if2} -| | Honeycomb sets interface vrf ID -| | ... | ${dut_node} | ${dut_to_tg_if1} | ${1} | ipv4 -| | Honeycomb sets interface vrf ID -| | ... | ${dut_node} | ${dut_to_tg_if2} | ${1} | ipv4 +| | Setup vrf IDs | ${dut_node} | ${dut_to_tg_if1} | ${1} +| | Setup vrf IDs | ${dut_node} | ${dut_to_tg_if2} | ${1} | | Honeycomb sets interface state | ${dut_node} | ${dut_to_tg_if1} | up | | Honeycomb sets interface state | ${dut_node} | ${dut_to_tg_if2} | up | | Honeycomb sets interface ipv4 address with prefix | ${dut_node} @@ -203,9 +199,17 @@ | | ... | ${src_ip} | ${tg_to_dut_if1_mac} | | Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${dut_to_tg_if2} | | ... | ${next_hop} | ${tg_to_dut_if2_mac} +| | Vpp all ra suppress link layer | ${nodes} | Honeycomb routing test teardown | | [arguments] | ${node} | ${routing_table} | | Show Packet Trace on All DUTs | ${nodes} | | Log routing configuration from VAT | ${node} | | Honeycomb removes routing configuration | ${node} | ${routing_table} + +| Setup vrf IDs +| | [Arguments] | ${node} | ${interface} | ${vrf} +| | Honeycomb sets interface vrf ID +| | ... | ${node} | ${interface} | ${vrf} | ipv4 +| | Honeycomb sets interface vrf ID +| | ... | ${node} | ${interface} | ${vrf} | ipv6
\ No newline at end of file diff --git a/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot index f15a632f29..c4e929574f 100644 --- a/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot @@ -31,12 +31,10 @@ | | ... | ${node} | ${nat_empty} | | When Honeycomb Configures NAT Entry | ${node} | ${entry1} | | Then NAT Entries From Honeycomb Should Be | ${node} | ${entry1} -| | And NAT Entries From VAT Should Be | ${node} | ${entry1_vat} | TC02: Honeycomb removes NAT entry | | [Documentation] | Honeycomb removes a configured static NAT entry. | | Given NAT Entries From Honeycomb Should Be | ${node} | ${entry1} -| | And NAT Entries From VAT Should Be | ${node} | ${entry1_vat} | | When Honeycomb Configures NAT Entry | ${node} | ${NONE} | | Then NAT configuration from Honeycomb should be empty | | ... | ${node} | ${nat_empty} @@ -50,7 +48,6 @@ | | And Honeycomb Configures NAT Entry | ${node} | ${entry2} | ${0} | ${2} | | Then NAT Entries From Honeycomb Should Be | | ... | ${node} | ${entry1_2_oper} | ${0} -| | And NAT Entries From VAT Should Be | ${node} | ${entry1_2_vat} | TC04: Honeycomb enables NAT on interface - inbound | | [Documentation] | Honeycomb configures NAT on an interface\ @@ -63,8 +60,6 @@ | | ... | ${node} | ${interface} | inbound | | Then NAT Interface Configuration From Honeycomb Should Be | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From VAT Should Be -| | ... | ${node} | ${nat_interface_vat_in} | | And NAT Interface Configuration From Honeycomb Should be empty | | ... | ${node} | ${interface} | outbound @@ -96,5 +91,3 @@ | | ... | ${node} | ${interface} | inbound | | And NAT Interface Configuration From Honeycomb Should Be | | ... | ${node} | ${interface} | outbound -| | And NAT Interface Configuration From VAT Should Be -| | ... | ${node} | ${nat_interface_vat_out} |