summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/selftest/cases/reproducible.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-02-03 23:39:29 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-02-06 12:16:34 +0000
commit7c201279cb5e065fa7bf648dc8d75072e1706e3e (patch)
tree119f6b510d74f41a131bcadc38d876633d86119e /meta/lib/oeqa/selftest/cases/reproducible.py
parent09c6a41b751d080f0c12fc4172a31d1dbe760b0b (diff)
downloadpoky-7c201279cb5e065fa7bf648dc8d75072e1706e3e.tar.gz
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) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/selftest/cases/reproducible.py')
-rw-r--r--meta/lib/oeqa/selftest/cases/reproducible.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/meta/lib/oeqa/selftest/cases/reproducible.py b/meta/lib/oeqa/selftest/cases/reproducible.py
index 04dc46f38a..f6433c9a02 100644
--- a/meta/lib/oeqa/selftest/cases/reproducible.py
+++ b/meta/lib/oeqa/selftest/cases/reproducible.py
@@ -185,6 +185,8 @@ class ReproducibleTests(OESelftestTestCase):
185 # NOTE: The temp directories from the reproducible build are purposely 185 # NOTE: The temp directories from the reproducible build are purposely
186 # kept after the build so it can be diffed for debugging. 186 # kept after the build so it can be diffed for debugging.
187 187
188 fails = []
189
188 for c in self.package_classes: 190 for c in self.package_classes:
189 with self.subTest(package_class=c): 191 with self.subTest(package_class=c):
190 package_class = 'package_' + c 192 package_class = 'package_' + c
@@ -208,8 +210,11 @@ class ReproducibleTests(OESelftestTestCase):
208 self.copy_file(d.test, '/'.join([save_dir, d.test])) 210 self.copy_file(d.test, '/'.join([save_dir, d.test]))
209 211
210 if result.missing or result.different: 212 if result.missing or result.different:
211 self.fail("The following %s packages are missing or different: %s" % 213 fails.append("The following %s packages are missing or different: %s" %
212 (c, ' '.join(r.test for r in (result.missing + result.different)))) 214 (c, '\n'.join(r.test for r in (result.missing + result.different))))
215
216 if fails:
217 self.fail('\n'.join(fails))
213 218
214 # Clean up empty directories 219 # Clean up empty directories
215 if self.save_results: 220 if self.save_results: