From: Richard Purdie Date: Mon, 3 Feb 2020 23:39:29 +0000 (+0000) Subject: oeqa/reproducible: Improve test output and ensure deb+ipk compared X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=38359c79dc6e02a21d1bc26756c8bd88da762ef8;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git oeqa/reproducible: Improve test output and ensure deb+ipk compared Adding newline characters between the packages in the failure output massively improves readability. Also ensure to output ipk failures when there are deb failures by calling self.fail() at the end, else sometimes only partial differences are returned. (From OE-Core rev: 6e2e0480852177db75a6108d77c99c92c4e9950f) (From OE-Core rev: 4d470f48f7fb5e05fba1ca3a59fb4f85d910026e) Signed-off-by: Richard Purdie Signed-off-by: Armin Kuster --- diff --git a/meta/lib/oeqa/selftest/cases/reproducible.py b/meta/lib/oeqa/selftest/cases/reproducible.py index a9110565a94..1b0b5bae70c 100644 --- a/meta/lib/oeqa/selftest/cases/reproducible.py +++ b/meta/lib/oeqa/selftest/cases/reproducible.py @@ -174,6 +174,8 @@ class ReproducibleTests(OESelftestTestCase): # NOTE: The temp directories from the reproducible build are purposely # kept after the build so it can be diffed for debugging. + fails = [] + for c in self.package_classes: with self.subTest(package_class=c): package_class = 'package_' + c @@ -197,6 +199,9 @@ class ReproducibleTests(OESelftestTestCase): self.copy_file(d.test, '/'.join([save_dir, d.test])) if result.missing or result.different: - self.fail("The following %s packages are missing or different: %s" % - (c, ' '.join(r.test for r in (result.missing + result.different)))) + fails.append("The following %s packages are missing or different: %s" % + (c, '\n'.join(r.test for r in (result.missing + result.different)))) + + if fails: + self.fail('\n'.join(fails))