binman: test: assert optional blobs don't cause non-functionality
When external blobs are marked optional, they should not cause a
build to fail. Extend the test cases for FitTeeOsOptional and
ExtblobOptional.
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Yannic Moog <y.moog@phytec.de>
Reviewed-by: Bryan Brattlof <bb@ti.com>
diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
index 32e1e0a..bedfcb5 100644
--- a/tools/binman/ftest.py
+++ b/tools/binman/ftest.py
@@ -6518,6 +6518,9 @@
self.assertRegex(
err,
"Image '.*' is missing optional external blobs but is still functional: tee-os")
+ self.assertNotRegex(
+ err,
+ "Image '.*' has faked external blobs and is non-functional: tee-os")
def testFitTeeOsOptionalFitBad(self):
"""Test an image with a FIT with an optional OP-TEE binary"""
@@ -6551,6 +6554,19 @@
self.assertEqual(REFCODE_DATA, data)
self.assertNotIn(MISSING_DATA, data)
+ def testExtblobFakedOptional(self):
+ """Test an image with an external blob that is optional"""
+ with terminal.capture() as (stdout, stderr):
+ data = self._DoReadFile('266_blob_ext_opt.dts')
+ self.assertEqual(REFCODE_DATA, data)
+ err = stderr.getvalue()
+ self.assertRegex(
+ err,
+ "Image '.*' is missing optional external blobs but is still functional: missing")
+ self.assertNotRegex(
+ err,
+ "Image '.*' has faked external blobs and is non-functional: missing")
+
def testSectionInner(self):
"""Test an inner section with a size"""
data = self._DoReadFile('267_section_inner.dts')