Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 4 additions & 9 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ env:
jobs:
test:
name: Regression Test ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.name || inputs.name }} ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.target || inputs.target }}
runs-on: [ self-hosted, regression ]
runs-on: [self-hosted, regression]
steps:
- name: Checkout infix repo
uses: actions/checkout@v4
Expand Down Expand Up @@ -87,7 +87,7 @@ jobs:
fi
make test

- name: Publish Test Result for ${{ env.TARGET }}
- name: Publish Test Result for ${{ env.TARGET }}
# Ensure this runs even if Regression Test fails
if: always()
run: cat $TEST_PATH/.log/last/result-gh.md >> $GITHUB_STEP_SUMMARY
Expand All @@ -96,15 +96,10 @@ jobs:
# Ensure this runs even if Regression Test fails
if: always()
run: |
asciidoctor-pdf \
--theme $TEST_PATH/9pm/report/theme.yml \
-a pdf-fontsdir=$TEST_PATH/9pm/report/fonts \
$TEST_PATH/.log/last/report.adoc \
-o $TEST_PATH/.log/last/report.pdf
make test-dir="$(pwd)/$TEST_PATH" test-report

- name: Upload Test Report as Artifact
uses: actions/upload-artifact@v4
with:
name: test-report
path: ${{ env.TEST_PATH }}/.log/last/report.pdf

path: output/images/test-report.pdf
4 changes: 2 additions & 2 deletions board/common/mkdisk.sh
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ genboot()
{
if [ -d "$bootdata" ]; then
bootimg=$(cat <<EOF
image efi-part.vfat {
image $BINARIES_DIR/efi-part.vfat {
size = $bootsize
vfat {
file EFI {
Expand All @@ -98,7 +98,7 @@ EOF
offset = $bootoffs
partition-type-uuid = U
bootable = true
image = efi-part.vfat
image = $BINARIES_DIR/efi-part.vfat
}
EOF
)
Expand Down
41 changes: 20 additions & 21 deletions test/case/all.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,38 +14,37 @@
infamy:
specification: False


- name: Misc tests
suite: misc/misc.yaml

- name: ietf-system
suite: ietf_system/ietf_system.yaml
suite: misc/all.yaml

# Upgrade may leave wrong boot order
- case: meta/bootorder.py
infamy:
specification: False

- name: ietf-syslog
suite: ietf_syslog/ietf_syslog.yaml
- name: "IETF System"
suite: ietf_system/all.yaml

- name: "IETF Syslog"
suite: ietf_syslog/all.yaml

- name: ietf-interfaces
suite: ietf_interfaces/ietf_interfaces.yaml
- name: "IETF Interfaces"
suite: ietf_interfaces/all.yaml

- name: ietf-routing
suite: ietf_routing/ietf_routing.yaml
- name: "IETF Routing"
suite: ietf_routing/all.yaml

- name: infix-containers
suite: infix_containers/infix_containers.yaml
- name: "Infix Containers"
suite: infix_containers/all.yaml

- name: infix-dhcp
suite: infix_dhcp/infix_dhcp.yaml
- name: "Infix DHCP"
suite: infix_dhcp/all.yaml

- name: ietf-hardware
suite: ietf_hardware/ietf_hardware.yaml
- name: "IETF Hardware"
suite: ietf_hardware/all.yaml

- name: infix-services
suite: infix_services/infix_services.yaml
- name: "Infix Services"
suite: infix_services/all.yaml

- name: use-cases
suite: use_case/use_case.yml
- name: "Use Case Tests"
suite: use_case/all.yaml
5 changes: 4 additions & 1 deletion test/case/ietf_hardware/Readme.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
:testgroup:
== ietf-hardware

<<<
Tests verifying IETF standard hardware monitoring and management:

- USB device detection and enumeration
- Multiple USB port management and device handling

include::usb/Readme.adoc[]

Expand Down
6 changes: 6 additions & 0 deletions test/case/ietf_hardware/all.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
- name: USB configuration
case: usb/test.py

- name: USB configuration with two USB ports
case: usb_two_ports/test.py
6 changes: 0 additions & 6 deletions test/case/ietf_hardware/ietf_hardware.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion test/case/ietf_hardware/usb/Readme.adoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
=== USB configuration

ifdef::topdoc[:imagesdir: {topdoc}../../test/case/ietf_hardware/usb]

==== Description

This test checks if the configuration is consistent with hardware state,
and verifies whether the USB ports are correctly _locked_ (restricted from
use) and _unlocked_ (available for use) when they should. It also verifies
Expand All @@ -11,18 +15,11 @@ If this pass you can be certain that the configuration of the USB
port is handled correctly.

==== Topology
ifdef::topdoc[]
image::{topdoc}../../test/case/ietf_hardware/usb/topology.svg[USB configuration topology]
endif::topdoc[]
ifndef::topdoc[]
ifdef::testgroup[]
image::usb/topology.svg[USB configuration topology]
endif::testgroup[]
ifndef::testgroup[]
image::topology.svg[USB configuration topology]
endif::testgroup[]
endif::topdoc[]
==== Test sequence

image::topology.svg[USB configuration topology, align=center, scaledwidth=75%]

==== Sequence

. Set up topology and attach to target DUT
. Unlock all USB ports
. Verify that all USB ports are unlocked
Expand All @@ -36,5 +33,3 @@ endif::topdoc[]
. Verify USB port remain unlocked after reboot


<<<

2 changes: 1 addition & 1 deletion test/case/ietf_hardware/usb_two_ports/Readme.adoc
Original file line number Diff line number Diff line change
@@ -1,27 +1,22 @@
=== USB configuration with two USB ports

ifdef::topdoc[:imagesdir: {topdoc}../../test/case/ietf_hardware/usb_two_ports]

==== Description

Test that the USB locked/unlocked configuration is consistent
when having two USB ports.

==== Topology
ifdef::topdoc[]
image::{topdoc}../../test/case/ietf_hardware/usb_two_ports/topology.svg[USB configuration with two USB ports topology]
endif::topdoc[]
ifndef::topdoc[]
ifdef::testgroup[]
image::usb_two_ports/topology.svg[USB configuration with two USB ports topology]
endif::testgroup[]
ifndef::testgroup[]
image::topology.svg[USB configuration with two USB ports topology]
endif::testgroup[]
endif::topdoc[]
==== Test sequence

image::topology.svg[USB configuration with two USB ports topology, align=center, scaledwidth=75%]

==== Sequence

. Set up topology and attach to target DUTs
. Lock the first USB port and unlock the second USB port
. Verify that the correct port is locked and the correct one is unlocked
. Unlock the first USB port, and lock the second USB port
. Verify that the correct port is locked and the correct one is unlocked


<<<

69 changes: 68 additions & 1 deletion test/case/ietf_interfaces/Readme.adoc
Original file line number Diff line number Diff line change
@@ -1,60 +1,127 @@
:testgroup:
== ietf-interfaces

<<<
Tests verifying IETF standard interface configuration and management:

- VLAN interface configuration and connectivity
- IPv4 and IPv6 address assignment and management
- IPv4 address auto-configuration mechanisms
- Interface aliases and physical address configuration
- Basic routing table configuration and operation
- Linux bridge creation, STP, and VLAN handling
- Link aggregation (LAG) setup and failover behavior
- IGMP multicast group management and forwarding
- QoS traffic classification and priority handling
- Interface enable/disable state management
- Virtual Ethernet (VETH) pair lifecycle management
- GRE tunneling configuration and data plane operation

include::vlan_ping/Readme.adoc[]

<<<

include::ipv4_address/Readme.adoc[]

<<<

include::ipv6_address/Readme.adoc[]

<<<

include::ipv4_autoconf/Readme.adoc[]

<<<

include::ifalias/Readme.adoc[]

<<<

include::iface_phys_address/Readme.adoc[]

<<<

include::routing_basic/Readme.adoc[]

<<<

include::bridge_basic/Readme.adoc[]

<<<

include::bridge_fwd_dual_dut/Readme.adoc[]

<<<

include::bridge_fwd_sgl_dut/Readme.adoc[]

<<<

include::bridge_stp_basic/Readme.adoc[]

<<<

include::bridge_veth/Readme.adoc[]

<<<

include::bridge_vlan/Readme.adoc[]

<<<

include::speed_duplex_copper/Readme.adoc[]

<<<

include::bridge_vlan_separation/Readme.adoc[]

<<<

include::dual_bridge/Readme.adoc[]

<<<

include::lag_basic/Readme.adoc[]

<<<

include::lag_failure/Readme.adoc[]

<<<

include::igmp_basic/Readme.adoc[]

<<<

include::igmp_vlan/Readme.adoc[]

<<<

include::static_multicast_filters/Readme.adoc[]

<<<

include::vlan_qos/Readme.adoc[]

<<<

include::verify_all_interface_types/Readme.adoc[]

<<<

include::iface_enable_disable/Readme.adoc[]

<<<

include::veth_delete/Readme.adoc[]

<<<

include::vlan_iface_termination/Readme.adoc[]

<<<

include::tunnel_basic/Readme.adoc[]

<<<

include::tunnel_bridged/Readme.adoc[]
Loading