From: Sean Edmond Date: Tue, 11 Apr 2023 17:48:48 +0000 (-0700) Subject: net: dhcp6: Add a sandbox test for dhcp6 X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=29fb68c4ff362325426dee6646e4dc3de01539f1;p=u-boot.git net: dhcp6: Add a sandbox test for dhcp6 Requires proper environment with DHCP6 server provisioned. Signed-off-by: Sean Edmond Reviewed-by: Ramon Fried --- diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig index 24a44483a5..b775bf586b 100644 --- a/configs/sandbox_defconfig +++ b/configs/sandbox_defconfig @@ -91,6 +91,7 @@ CONFIG_CMD_AXI=y CONFIG_CMD_CAT=y CONFIG_CMD_SETEXPR_FMT=y CONFIG_CMD_AB_SELECT=y +CONFIG_CMD_DHCP6=y CONFIG_BOOTP_DNS2=y CONFIG_CMD_PCAP=y CONFIG_CMD_TFTPPUT=y diff --git a/test/py/tests/test_net.py b/test/py/tests/test_net.py index 9ca6743afd..0447c0b2e0 100644 --- a/test/py/tests/test_net.py +++ b/test/py/tests/test_net.py @@ -29,6 +29,11 @@ env__net_uses_pci = True # set to False. env__net_dhcp_server = True +# True if a DHCPv6 server is attached to the network, and should be tested. +# If DHCPv6 testing is not possible or desired, this variable may be omitted or +# set to False. +env__net_dhcp6_server = True + # A list of environment variables that should be set in order to configure a # static IP. If solely relying on DHCP, this variable may be omitted or set to # an empty list. @@ -58,6 +63,7 @@ env__net_nfs_readable_file = { """ net_set_up = False +net6_set_up = False def test_net_pre_commands(u_boot_console): """Execute any commands required to enable network hardware. @@ -93,6 +99,25 @@ def test_net_dhcp(u_boot_console): global net_set_up net_set_up = True +@pytest.mark.buildconfigspec('cmd_dhcp6') +def test_net_dhcp6(u_boot_console): + """Test the dhcp6 command. + + The boardenv_* file may be used to enable/disable this test; see the + comment at the beginning of this file. + """ + + test_dhcp6 = u_boot_console.config.env.get('env__net_dhcp6_server', False) + if not test_dhcp6: + pytest.skip('No DHCP6 server available') + + u_boot_console.run_command('setenv autoload no') + output = u_boot_console.run_command('dhcp6') + assert 'DHCP6 client bound to ' in output + + global net6_set_up + net6_set_up = True + @pytest.mark.buildconfigspec('net') def test_net_setup_static(u_boot_console): """Set up a static IP configuration.