mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-18 19:04:38 +00:00
test: Avoid failing skipped tests
When a test returns -EAGAIN this should not be considered a failure. Fix what seems to be a problem case, where the pytests see a failure when a test has merely been skipped. We cannot squash the -EAGAIN error in ut_run_test() since the failure count is incremented by its caller, ut_run_test_live_flat() The specific example here is on snow, where a test is compiled into the image but cannot run, so returns -EAGAIN to skip: test/py/tests/test_ut.py sssnow # ut bdinfo bdinfo_test_eth Test: bdinfo_test_eth: bdinfo.c Skipping: Console recording disabled test/test-main.c:486, ut_run_test_live_flat(): 0 == ut_run_test(uts, test, test->name): Expected 0x0 (0), got 0xfffffff5 (-11) Test bdinfo_test_eth failed 1 times Skipped: 1, Failures: 1 snow # F+u-boot-test-reset snow snow The fix is simply to respect the return code from ut_run_test(), so do that. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
189c4d9f5c
commit
4018a08e42
1 changed files with 11 additions and 5 deletions
|
@ -486,7 +486,7 @@ static int ut_run_test(struct unit_test_state *uts, struct unit_test *test,
|
|||
static int ut_run_test_live_flat(struct unit_test_state *uts,
|
||||
struct unit_test *test)
|
||||
{
|
||||
int runs;
|
||||
int runs, ret;
|
||||
|
||||
if ((test->flags & UTF_OTHER_FDT) && !IS_ENABLED(CONFIG_SANDBOX))
|
||||
return skip_test(uts);
|
||||
|
@ -496,8 +496,11 @@ static int ut_run_test_live_flat(struct unit_test_state *uts,
|
|||
if (CONFIG_IS_ENABLED(OF_LIVE)) {
|
||||
if (!(test->flags & UTF_FLAT_TREE)) {
|
||||
uts->of_live = true;
|
||||
ut_assertok(ut_run_test(uts, test, test->name));
|
||||
runs++;
|
||||
ret = ut_run_test(uts, test, test->name);
|
||||
if (ret != -EAGAIN) {
|
||||
ut_assertok(ret);
|
||||
runs++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -521,8 +524,11 @@ static int ut_run_test_live_flat(struct unit_test_state *uts,
|
|||
(!runs || ut_test_run_on_flattree(test)) &&
|
||||
!(gd->flags & GD_FLG_FDT_CHANGED)) {
|
||||
uts->of_live = false;
|
||||
ut_assertok(ut_run_test(uts, test, test->name));
|
||||
runs++;
|
||||
ret = ut_run_test(uts, test, test->name);
|
||||
if (ret != -EAGAIN) {
|
||||
ut_assertok(ret);
|
||||
runs++;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Add table
Reference in a new issue