diff mbox series

[V2,1/5] oeqa/sdk: clarify ELF assertion message

Message ID 20181211232636.13113-1-ross.burton@intel.com
State Accepted
Commit 9ab94cea589fca4394ec1fd8dc06b23fd8e990b9
Headers show
Series [V2,1/5] oeqa/sdk: clarify ELF assertion message | expand

Commit Message

Ross Burton Dec. 11, 2018, 11:26 p.m. UTC
For example, instead of saying "3 != 62", say "Binary was x86-64 but expected
i586".

Signed-off-by: Ross Burton <ross.burton@intel.com>

---
 meta/lib/oeqa/sdk/case.py | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

-- 
2.11.0

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
diff mbox series

Patch

diff --git a/meta/lib/oeqa/sdk/case.py b/meta/lib/oeqa/sdk/case.py
index ea15d6a107e..d8611c8b308 100644
--- a/meta/lib/oeqa/sdk/case.py
+++ b/meta/lib/oeqa/sdk/case.py
@@ -1,6 +1,7 @@ 
 # Copyright (C) 2016 Intel Corporation
 # Released under the MIT license (see COPYING.MIT)
 
+import os
 import subprocess
 
 from oeqa.core.case import OETestCase
@@ -26,11 +27,13 @@  class OESDKTestCase(OETestCase):
         return tarball
 
     def check_elf(self, path, target_os=None, target_arch=None):
+        """
+        Verify that the ELF binary $path matches the specified target
+        OS/architecture, or if not specified the currently configured MACHINE's
+        OS/architecture.
+        """
         import oe.qa, oe.elf
 
-        elf = oe.qa.ELFFile(path)
-        elf.open()
-
         if not target_os or not target_arch:
             output = self._run("echo $OECORE_TARGET_OS:$OECORE_TARGET_ARCH")
             target_os, target_arch = output.strip().split(":")
@@ -38,7 +41,11 @@  class OESDKTestCase(OETestCase):
         machine_data = oe.elf.machine_dict(None)[target_os][target_arch]
         (machine, osabi, abiversion, endian, bits) = machine_data
 
-        self.assertEqual(machine, elf.machine())
+        elf = oe.qa.ELFFile(path)
+        elf.open()
+
+        self.assertEqual(machine, elf.machine(),
+                         "Binary was %s but expected %s" %
+                         (oe.qa.elf_machine_to_string(elf.machine()), oe.qa.elf_machine_to_string(machine)))
         self.assertEqual(bits, elf.abiSize())
         self.assertEqual(endian, elf.isLittleEndian())
-