tests: refactor asf framework code 57/39457/45
authorDave Wallace <dwallacelf@gmail.com>
Thu, 31 Aug 2023 04:47:44 +0000 (00:47 -0400)
committerAndrew Yourtchenko <ayourtch@gmail.com>
Fri, 3 Nov 2023 05:06:43 +0000 (05:06 +0000)
commit8800f732f868bf54da8adba05e38bd2477895ca5
tree41cfeab26058ef7238c1e1e8199a05617a98541e
parentaf5684bf18077acf1f448c6f2a62ef1af9f9be05
tests: refactor asf framework code

- Make framework.py classes a subset of asfframework.py classes
- Remove all packet related code from asfframework.py
- Add test class and test case set up debug output to log
- Repatriate packet tests from asf to test directory
- Remove non-packet related code from framework.py and
  inherit them from asfframework.py classes
- Clean up unused import variables
- Re-enable BFD tests on Ubuntu 22.04 and fix
  intermittent test failures in echo_looped_back
  testcases (where # control packets verified but
  not guaranteed to be received during test)
- Re-enable Wireguard tests on Ubuntu 22.04 and fix
  intermittent test failures in handshake ratelimiting
  testcases and event testcase
- Run Wiregard testcase suites solo
- Improve debug output in log.txt
- Increase VCL/LDP post sleep timeout to allow iperf server
  to finish cleanly.
- Fix pcap history files to be sorted by suite and testcase
  and ensure order/timestamp is correct based on creation
  in the testcase.
- Decode pcap files for each suite and testcase for all
  errors or if configured via comandline option / env var
- Improve vpp corefile detection to allow complete corefile
  generation
- Disable vm vpp interfaces testcases on debian11
- Clean up failed unittest dir when retrying failed testcases
  and unify testname directory and failed linknames into
  framwork functions

Type: test

Change-Id: I0764f79ea5bb639d278bf635ed2408d4d5220e1e
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
166 files changed:
Makefile
test/Makefile
test/asf/asfframework.py
test/asf/test_adl.py
test/asf/test_api_client.py
test/asf/test_api_trace.py
test/asf/test_bihash.py
test/asf/test_buffers.py
test/asf/test_cli.py
test/asf/test_counters.py
test/asf/test_crypto.py
test/asf/test_endian.py
test/asf/test_fib.py
test/asf/test_http.py
test/asf/test_http_static.py
test/asf/test_lb_api.py
test/asf/test_mactime.py
test/asf/test_mpcap.py
test/asf/test_node_variants.py
test/asf/test_offload.py
test/asf/test_policer.py
test/asf/test_quic.py
test/asf/test_session.py
test/asf/test_sparse_vec.py
test/asf/test_string.py
test/asf/test_tap.py
test/asf/test_tcp.py
test/asf/test_tls.py
test/asf/test_vapi.py
test/asf/test_vcl.py
test/asf/test_vhost.py
test/asf/test_vpe_api.py
test/asf/test_vppinfra.py
test/config.py
test/discover_tests.py
test/framework.py
test/hook.py
test/lisp.py [moved from test/asf/lisp.py with 100% similarity]
test/remote_test.py [moved from test/asf/remote_test.py with 99% similarity]
test/requirements-3.txt
test/requirements.txt
test/run_tests.py
test/sanity_run_vpp.py
test/template_classifier.py
test/template_ipsec.py
test/test_abf.py
test/test_acl_plugin.py
test/test_acl_plugin_conns.py
test/test_acl_plugin_l2l3.py
test/test_acl_plugin_macip.py
test/test_bfd.py
test/test_bier.py
test/test_bond.py
test/test_bufmon.py
test/test_classifier.py
test/test_classifier_ip6.py
test/test_classify_l2_acl.py
test/test_cnat.py
test/test_container.py
test/test_dhcp.py
test/test_dhcp6.py
test/test_dns.py
test/test_dslite.py
test/test_dvr.py
test/test_flowprobe.py
test/test_geneve.py
test/test_gre.py
test/test_gro.py
test/test_gso.py
test/test_gtpu.py
test/test_igmp.py
test/test_ikev2.py
test/test_interface_crud.py
test/test_ip4.py
test/test_ip4_irb.py
test/test_ip4_vrf_multi_instance.py
test/test_ip6.py
test/test_ip6_nd_mirror_proxy.py
test/test_ip6_vrf_multi_instance.py
test/test_ip_ecmp.py
test/test_ip_mcast.py
test/test_ipfix_export.py [moved from test/asf/test_ipfix_export.py with 94% similarity]
test/test_ipip.py
test/test_ipsec_ah.py
test/test_ipsec_api.py
test/test_ipsec_default.py [moved from test/asf/test_ipsec_default.py with 100% similarity]
test/test_ipsec_esp.py
test/test_ipsec_spd_flow_cache_input.py [moved from test/asf/test_ipsec_spd_flow_cache_input.py with 99% similarity]
test/test_ipsec_spd_flow_cache_output.py [moved from test/asf/test_ipsec_spd_flow_cache_output.py with 100% similarity]
test/test_ipsec_spd_fp_input.py
test/test_ipsec_spd_fp_output.py [moved from test/asf/test_ipsec_spd_fp_output.py with 100% similarity]
test/test_ipsec_tun_if_esp.py
test/test_l2_fib.py
test/test_l2_flood.py
test/test_l2bd.py
test/test_l2bd_arp_term.py
test/test_l2bd_learnlimit.py
test/test_l2bd_learnlimit_bdenabled.py
test/test_l2bd_learnlimit_enabled.py
test/test_l2bd_multi_instance.py
test/test_l2tp.py
test/test_l2xc.py
test/test_l2xc_multi_instance.py
test/test_l3xc.py
test/test_lacp.py
test/test_linux_cp.py
test/test_lisp.py
test/test_lldp.py
test/test_map.py
test/test_map_br.py
test/test_mdata.py
test/test_memif.py
test/test_mpls.py
test/test_mss_clamp.py
test/test_mtu.py
test/test_nat44_ed.py
test/test_nat44_ed_output.py
test/test_nat44_ei.py
test/test_nat64.py
test/test_nat66.py
test/test_neighbor.py
test/test_npt66.py
test/test_p2p_ethernet.py
test/test_pcap.py [moved from test/asf/test_pcap.py with 98% similarity]
test/test_pg.py
test/test_ping.py
test/test_pipe.py
test/test_pnat.py
test/test_policer_input.py
test/test_pppoe.py
test/test_punt.py
test/test_qos.py
test/test_reassembly.py
test/test_sixrd.py
test/test_snort.py
test/test_span.py
test/test_srmpls.py
test/test_srv6.py
test/test_srv6_ad.py
test/test_srv6_ad_flow.py
test/test_srv6_as.py
test/test_srv6_un.py
test/test_stats_client.py
test/test_stn.py
test/test_svs.py
test/test_syslog.py
test/test_trace_filter.py
test/test_udp.py
test/test_urpf.py
test/test_vlib.py [moved from test/asf/test_vlib.py with 98% similarity]
test/test_vm_vpp_interfaces.py
test/test_vrrp.py
test/test_vtr.py
test/test_vxlan.py
test/test_vxlan6.py
test/test_vxlan_gpe.py
test/test_wireguard.py
test/vpp_bier.py
test/vpp_bond_interface.py
test/vpp_gre_interface.py
test/vpp_ikev2.py
test/vpp_interface.py
test/vpp_ip.py
test/vpp_ipip_tun_interface.py
test/vpp_neighbor.py
test/vpp_pg_interface.py