[PATCH v2] test/cmd/wget.c: move net_test_wget() to the cmd test suite
Jerome Forissier
jerome.forissier at linaro.org
Thu Nov 28 16:37:13 CET 2024
On 11/19/24 16:59, Tom Rini wrote:
> On Fri, Nov 15, 2024 at 05:45:14PM +0100, Jerome Forissier wrote:
>
>> Since net_test_wget() is testing a command and is in test/cmd it should
>> be in the 'cmd' test suite, not 'lib'.
>>
>> Saving and restoring the values of the environment variables that the
>> test manipulates is necessary to avoid a regression when running the
>> whole ut test suite. A minimal reproducer is:
>>
>> $ ./u-boot -T -c "ut cmd net_test_wget; ut dm dm_test_eth_act" | \
>> grep -E "(Test:|Failures:)"
>>
>> Reported-by: Simon Glass <sjg at chromium.org>
>> Signed-off-by: Jerome Forissier <jerome.forissier at linaro.org>
>> ---
>> test/cmd/wget.c | 12 ++++++++++--
>> 1 file changed, 10 insertions(+), 2 deletions(-)
>>
>> diff --git a/test/cmd/wget.c b/test/cmd/wget.c
>> index fe26fee54c9..7570c065a10 100644
>> --- a/test/cmd/wget.c
>> +++ b/test/cmd/wget.c
>> @@ -19,7 +19,7 @@
>> #include <dm/test.h>
>> #include <dm/device-internal.h>
>> #include <dm/uclass-internal.h>
>> -#include <test/lib.h>
>> +#include <test/cmd.h>
>> #include <test/test.h>
>> #include <test/ut.h>
>>
>> @@ -206,6 +206,10 @@ static int sb_http_handler(struct udevice *dev, void *packet,
>>
>> static int net_test_wget(struct unit_test_state *uts)
>> {
>> + char *prev_ethact = env_get("ethact");
>> + char *prev_ethrotate = env_get("ethrotate");
>> + char *prev_loadaddr = env_get("loadaddr");
>> +
>> sandbox_eth_set_tx_handler(0, sb_http_handler);
>> sandbox_eth_set_priv(0, uts);
>>
>> @@ -223,6 +227,10 @@ static int net_test_wget(struct unit_test_state *uts)
>> ut_assert_nextline("md5 for 00020000 ... 0002001f ==> 234af48e94b0085060249ecb5942ab57");
>> ut_assert_console_end();
>>
>> + env_set("ethact", prev_ethact);
>> + env_set("ethrotate", prev_ethrotate);
>> + env_set("loadaddr", prev_loadaddr);
>> +
>> return 0;
>> }
>> -LIB_TEST(net_test_wget, UTF_CONSOLE);
>> +CMD_TEST(net_test_wget, UTF_CONSOLE);
>
> I don't know why / how, but now this causes the "hash" unit test to
> fail, in both Azure and GitLab.
CI passed on https://github.com/u-boot/u-boot/pull/700. How do I reproduce
the problem?
Thanks,
--
Jerome
More information about the U-Boot
mailing list