[PATCH 41/45] vbe: Use a manual test

Simon Glass sjg at chromium.org
Sun Sep 25 17:02:44 CEST 2022


Use a manual test for the VBE test, so we can make the pytest and the
C unit test work together properly.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 test/boot/vbe_fixup.c     | 19 ++++++++-----------
 test/py/tests/test_vbe.py |  7 ++-----
 2 files changed, 10 insertions(+), 16 deletions(-)

diff --git a/test/boot/vbe_fixup.c b/test/boot/vbe_fixup.c
index 7f0f809499a..eba5c4ebe6c 100644
--- a/test/boot/vbe_fixup.c
+++ b/test/boot/vbe_fixup.c
@@ -13,21 +13,18 @@
 #include <test/ut.h>
 #include "bootstd_common.h"
 
-/* Basic test of reading nvdata and updating a fwupd node in the device tree */
-static int vbe_test_fixup(struct unit_test_state *uts)
+/*
+ * Basic test of reading nvdata and updating a fwupd node in the device tree
+ * This test works when called from test_vbe.py and it must use the flat tree,
+ * since device tree fix-ups do not yet support live tree.
+ */
+static int vbe_test_fixup_norun(struct unit_test_state *uts)
 {
 	ofnode chosen, node;
 	const char *data;
 	oftree tree;
 	int size;
 
-	/*
-	 * This test works when called from test_vbe.py and it must use the
-	 * flat tree, since device tree fix-ups do not yet support live tree.
-	 */
-	if (!working_fdt)
-		return -EAGAIN;
-
 	tree = oftree_from_fdt(working_fdt);
 	ut_assert(oftree_valid(tree));
 
@@ -55,5 +52,5 @@ static int vbe_test_fixup(struct unit_test_state *uts)
 
 	return 0;
 }
-BOOTSTD_TEST(vbe_test_fixup,
-	     UT_TESTF_DM | UT_TESTF_SCAN_FDT | UT_TESTF_FLAT_TREE);
+BOOTSTD_TEST(vbe_test_fixup_norun, UT_TESTF_DM | UT_TESTF_SCAN_FDT |
+	     UT_TESTF_FLAT_TREE | UT_TESTF_MANUAL);
diff --git a/test/py/tests/test_vbe.py b/test/py/tests/test_vbe.py
index a39cf0b31c6..8b74bfde096 100644
--- a/test/py/tests/test_vbe.py
+++ b/test/py/tests/test_vbe.py
@@ -88,7 +88,7 @@ bootm loados
 bootm prep
 fdt addr
 fdt print
-ut bootstd vbe_test_fixup
+ut bootstd -f vbe_test_fixup_norun
 '''
 
 @pytest.mark.boardspec('sandbox_flattree')
@@ -121,7 +121,4 @@ def test_vbe(u_boot_console):
     with cons.log.section('Kernel load'):
         output = cons.run_command_list(cmd.splitlines())
 
-    # This is a little wonky since there are two tests running in CI. The final
-    # one is the 'ut bootstd' command above
-    failures = [line for line in output if 'Failures' in line]
-    assert len(failures) >= 1 and 'Failures: 0' in failures[-1]
+    assert 'Failures: 0' in output[-1]
-- 
2.37.3.998.g577e59143f-goog



More information about the U-Boot mailing list