[oe-commits] [openembedded-core] 02/02: oeqa/oetest: Improve subprocess error reporting

git at git.openembedded.org git at git.openembedded.org
Wed Aug 17 09:24:15 UTC 2016


rpurdie pushed a commit to branch master
in repository openembedded-core.

commit b020b01d41ccaae5d679f1f7950af2e1a1788d39
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Mon Aug 15 17:56:40 2016 +0100

    oeqa/oetest: Improve subprocess error reporting
    
    Without this, we get to know the command failed and the exit code but
    have no idea how the command failed since we don't get the output by
    default.
    
    This makes it much easier to see what went wrong and stand a chance of
    fixing it.
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/lib/oeqa/oetest.py | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
index 5146312..cf7e862 100644
--- a/meta/lib/oeqa/oetest.py
+++ b/meta/lib/oeqa/oetest.py
@@ -136,6 +136,15 @@ class oeRuntimeTest(oeTest):
             if status != 0:
                 return status
 
+class OETestCalledProcessError(subprocess.CalledProcessError):
+    def __str__(self):
+        if hasattr(self, "stderr"):
+            return "Command '%s' returned non-zero exit status %d with output %s and stderr %s" % (self.cmd, self.returncode, self.output, self.stderr)
+        else:
+            return "Command '%s' returned non-zero exit status %d with output %s" % (self.cmd, self.returncode, self.output)
+
+subprocess.CalledProcessError = OETestCalledProcessError
+
 class oeSDKTest(oeTest):
     def __init__(self, methodName='runTest'):
         self.sdktestdir = oeSDKTest.tc.sdktestdir

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list