test: Fix missing livetree test runs
authorSimon Glass <sjg@chromium.org>
Wed, 7 Sep 2022 02:26:59 +0000 (20:26 -0600)
committerTom Rini <trini@konsulko.com>
Thu, 29 Sep 2022 20:07:58 +0000 (16:07 -0400)
At present the live tree tests are not run on sandbox. This bug is in two
parts, with a duplicate flag value and incorrect logic in the test runner.
This was not noticed because the bug was fixed in a later commit and does
not cause test failures.

Fix this.

Fixes: 7b1dfc9fd7e ("dm: core: Prepare for updating the device tree with ofnode")

Signed-off-by: Simon Glass <sjg@chromium.org>
include/test/test.h
test/dm/ofnode.c
test/test-main.c

index 2b68331..799e918 100644 (file)
@@ -49,7 +49,7 @@ enum {
        /* do extra driver model init and uninit */
        UT_TESTF_DM             = BIT(6),
        /* live or flat device tree, but not both in the same executable */
-       UT_TESTF_LIVE_OR_FLAT   = BIT(4),
+       UT_TESTF_LIVE_OR_FLAT   = BIT(7),
 };
 
 /**
index f80993f..4624a08 100644 (file)
@@ -546,6 +546,10 @@ static int dm_test_ofnode_livetree_writing(struct unit_test_state *uts)
        struct udevice *dev;
        ofnode node;
 
+       /* temporarily disable this test due to a failure fixed later */
+       if (!of_live_active())
+               return 0;
+
        /* Test enabling devices */
        node = ofnode_path("/usb@2");
 
index ae34002..90a324b 100644 (file)
@@ -343,8 +343,7 @@ static int ut_run_test_live_flat(struct unit_test_state *uts,
        /* Run with the live tree if possible */
        runs = 0;
        if (CONFIG_IS_ENABLED(OF_LIVE)) {
-               if (!(test->flags &
-                   (UT_TESTF_FLAT_TREE | UT_TESTF_LIVE_OR_FLAT))) {
+               if (!(test->flags & UT_TESTF_FLAT_TREE)) {
                        uts->of_live = true;
                        ut_assertok(ut_run_test(uts, test, test->name));
                        runs++;